/*
 FusionCharts JavaScript Library
 Copyright FusionCharts Technologies LLP
 License Information at <http://www.fusioncharts.com/license>
 FusionCharts JavaScript Library
 Copyright FusionCharts Technologies LLP
 License Information at <http://www.fusioncharts.com/license>

 @version 3.5.1
*/
FusionCharts.register("module",["private","modules.renderer.js-charts",function(){function Ea(a){var q={left:a.offsetLeft,top:a.offsetTop};for(a=a.offsetParent;a;)q.left+=a.offsetLeft,q.top+=a.offsetTop,a!==Ja.body&&a!==Ja.documentElement&&(q.left-=a.scrollLeft,q.top-=a.scrollTop),a=a.offsetParent;return q}function qa(a,q){for(var c=[],d=0,l=a.length;d<l;d++)c[d]=q.call(a[d],a[d],d,a);return c}function ba(a,q){var c=q?360:U;a=(a||0)%c;return 0>a?c+a:a}function La(a,q){return a<=y?a:q<=y?q:q>a?0:q}
function Oa(a,q,c,d,l){return V((q-c[1]-d.top)/l,a-c[0]-d.left)}function Ma(a,q,c,d,l,b,t,ca,e,r){"object"===typeof a&&(q=a.y,c=a.r,d=a.innerR,l=a.radiusYFactor,b=a.depth,t=a.seriesGroup,ca=a.renderer,a=a.x);if(0>l||1<=l)l=.6;a=a||0;q=q||0;c=c||1;d=d||0;b=b||0;this.renderer=ca;this.hasOnePoint=e;this.use3DLighting=r;this.cx=a;this.cy=q;this.rx=c;this.ry=c*l;this.radiusYFactor=l;this.isDoughnut=0<d;this.innerRx=d;this.innerRy=d*l;this.depth=b;this.leftX=a-c;this.rightX=a+c;this.leftInnerX=a-d;this.rightInnerX=
a+d;this.depthY=q+b;this.topY=q-this.ry;this.bottomY=this.depthY+this.ry;this.bottomBorderGroup=ca.group("bottom-border",t).attr({transform:"t0,"+b});this.outerBackGroup=ca.group("outer-back-Side",t);this.slicingWallsBackGroup=ca.group("slicingWalls-back-Side",t);this.innerBackGroup=ca.group("inner-back-Side",t);this.innerFrontGroup=ca.group("inner-front-Side",t);this.slicingWallsFrontGroup=ca.group("slicingWalls-front-Side",t);this.topGroup=ca.group("top-Side",t);this.moveCmdArr=["M"];this.lineCmdArr=
["L"];this.closeCmdArr=["Z"];this.centerPoint=[a,q];this.leftPoint=[this.leftX,q];this.topPoint=[a,this.topY];this.rightPoint=[this.rightX,q];this.bottomPoint=[a,q+this.ry];this.leftDepthPoint=[this.leftX,this.depthY];this.rightDepthPoint=[this.rightX,this.depthY];this.leftInnerPoint=[this.leftInnerX,q];this.rightInnerPoint=[this.rightInnerX,q];this.leftInnerDepthPoint=[this.leftInnerX,this.depthY];this.rightInnerDepthPoint=[this.rightInnerX,this.depthY];this.pointElemStore=[];this.slicingWallsArr=
[];a=["A",this.rx,this.ry,0,0,1,this.rightX,q];c=["A",this.rx,this.ry,0,0,1,this.leftX,q];d=["A",this.rx,this.ry,0,0,0,this.rightX,this.depthY];l=["A",this.rx,this.ry,0,0,0,this.leftX,this.depthY];b=["A",this.innerRx,this.innerRy,0,0,0,this.rightInnerX,q];q=["A",this.innerRx,this.innerRy,0,0,0,this.leftInnerX,q];t=["A",this.innerRx,this.innerRy,0,0,1,this.rightInnerX,this.depthY];ca=["A",this.innerRx,this.innerRy,0,0,1,this.leftInnerX,this.depthY];this.isDoughnut?(this.topBorderPath=this.moveCmdArr.concat(this.leftPoint,
a,c,this.moveCmdArr,this.leftInnerPoint,b,q),this.topPath=this.moveCmdArr.concat(this.leftPoint,a,c,this.lineCmdArr,this.leftInnerPoint,b,q,this.closeCmdArr),this.innerFrontPath=this.moveCmdArr.concat(this.leftInnerPoint,b,this.lineCmdArr,this.rightInnerDepthPoint,ca,this.closeCmdArr),this.innerBackPath=this.moveCmdArr.concat(this.rightInnerPoint,q,this.lineCmdArr,this.leftInnerDepthPoint,t,this.closeCmdArr)):this.topBorderPath=this.topPath=this.moveCmdArr.concat(this.leftPoint,a,c,this.closeCmdArr);
this.outerBackPath=this.moveCmdArr.concat(this.leftPoint,a,this.lineCmdArr,this.rightDepthPoint,l,this.closeCmdArr);this.outerFrontPath=this.moveCmdArr.concat(this.rightPoint,c,this.lineCmdArr,this.leftDepthPoint,d,this.closeCmdArr);this.clipPathforOuter=["M",this.leftX,this.topY,"L",this.rightX,this.topY,this.rightX,this.bottomY,this.leftX,this.bottomY,"Z"];this.clipPathforInner=["M",this.leftInnerX,this.topY,"L",this.rightInnerX,this.topY,this.rightInnerX,this.bottomY,this.leftInnerX,this.bottomY,
"Z"];this.clipPathforNoClip=["M",this.leftInnerX,this.topY,"L",this.leftInnerX,this.bottomY,"Z"];this.colorObjs=[]}var ra=this,s=ra.hcLib,pa=s.Raphael,A=ra.window,Ja=A.document,W=s.BLANKSTRING,Va=s.createTrendLine,g=s.pluck,Aa=s.getValidValue,Ga=s.parseTooltext,k=s.pluckNumber,Ha=s.getFirstValue,Wa=s.getDefinedColor,ja=s.parseUnsafeString,ua=s.FC_CONFIG_STRING,Ba=s.extend2,Fa=s.getDashStyle,w=s.toRaphaelColor,Ta=s.toPrecision,Xa=s.stubFN,la=s.hasSVG,xa=s.each,ya=s.TOUCH_THRESHOLD_PIXELS,Pa=s.CLICK_THRESHOLD_PIXELS,
va=s.plotEventHandler,b=s.hasTouch?ya:Pa,e="rgba(192,192,192,"+(s.isIE?.002:1E-6)+")",h=8===A.document.documentMode?"visible":"",f=Math,T=f.sin,S=f.cos,V=f.atan2,v=f.round,ia=f.min,n=f.max,ta=f.abs,B=f.PI,F=f.ceil,u=f.floor,$=f.sqrt,Y=B/180,J=180/B,y=Math.PI,Qa=y/2,U=2*y,ea=y+Qa,ma=s.graphics.getColumnColor,da=s.getFirstColor,Z=s.setLineHeight,Na=s.pluckFontSize,Ca=s.getFirstAlpha,ga=s.graphics.getDarkColor,ha=s.graphics.getLightColor,na=s.graphics.convertColor,Ra=s.COLOR_TRANSPARENT,Ua=s.POSITION_CENTER,
$a=s.POSITION_TOP,Ya=s.POSITION_BOTTOM,ab=s.POSITION_RIGHT,bb=s.POSITION_LEFT,cb=s.parsexAxisStyles,Za=s.hashify,p=s.chartAPI,db=s.graphics.mapSymbolName,ya=p.singleseries,aa=s.COMMASTRING,Da=s.ZEROSTRING,Ka=s.ONESTRING,Ia=s.HUNDREDSTRING,Sa=s.PXSTRING,eb=s.COMMASPACE,za=!/fusioncharts\.com$/i.test(A.location.hostname);p("column2d",{standaloneInit:!0,friendlyName:"Column Chart",creditLabel:za,rendererId:"cartesian"},p.column2dbase);p("column3d",{friendlyName:"3D Column Chart",defaultSeriesType:"column3d",
defaultPlotShadow:1,is3D:!0,fireGroupEvent:!0,defaultZeroPlaneHighlighted:!1},p.column2d);p("bar2d",{friendlyName:"Bar Chart",isBar:!0,defaultSeriesType:"bar",spaceManager:p.barbase},p.column2d);p("bar3d",{friendlyName:"3D Bar Chart",defaultSeriesType:"bar3d",defaultPlotShadow:1,fireGroupEvent:!0,is3D:!0,defaultZeroPlaneHighlighted:!1},p.bar2d);p("line",{friendlyName:"Line Chart",standaloneInit:!0,creditLabel:za,rendererId:"cartesian"},p.linebase);p("area2d",{friendlyName:"Area Chart",standaloneInit:!0,
creditLabel:za,rendererId:"cartesian"},p.area2dbase);p("pie2d",{friendlyName:"Pie Chart",standaloneInit:!0,defaultSeriesType:"pie",defaultPlotShadow:1,reverseLegend:1,alignCaptionWithCanvas:0,sliceOnLegendClick:!0,rendererId:"pie",point:function(a,q,c,d,l){a=l[ua];var b=this.colorManager,t=a.is3d,ca=k(d.plotborderthickness),e=k(ca,t?.1:1),r=k(d.enablemultislicing,1),X=k(d.use3dlighting,1),m=X?k(d.radius3d,d["3dradius"],90):100,ka=k(d.showzeropies,1),h=k(d.showpercentintooltip,1),f=k(d.showlabels,
1),x=k(d.showvalues,1),p=k(d.showpercentvalues,d.showpercentagevalues,0),z=g(d.tooltipsepchar,d.hovercapsepchar,eb),fb=g(d.labelsepchar,z),O=g(d.plotbordercolor,d.piebordercolor),C=l[ua].numberFormatter,T=c.length,S=k(d.plotborderdashed,0),N=k(d.plotborderdashlen,5),D=k(d.plotborderdashgap,4),H=k(d.showvalueinlegend,0),K=k(d.showlabelinlegend,1),v=k(d.valuebeforelabelinlegend,0),fa=k(d.showvalueaspercentinlegend,1),I=k(d.reverseplotorder,0),P=g(d.legendsepchar,", "),R=l.plotOptions.series.dataLabels.style,
Q=0,n=[],y,M,sa,E,G,L,u,F,ia,V,B,U,s,A,ta,w,J,$,Y,oa=-1;J=q.centerLabelConfig={label:ja(g(d.defaultcenterlabel,"")),font:g(d.centerlabelfont,R.fontFamily),fontSize:k(d.centerlabelfontsize,parseInt(R.fontSize,10)),color:da(g(d.centerlabelcolor,d.valuefontcolor,a.inCanvasStyle.color,"555555")),alpha:k(d.centerlabelalpha,100),bold:k(d.centerlabelbold,R.fontWeight),italic:k(d.centerlabelitalic,R.style),bgColor:g(d.centerlabelbgcolor,""),bgAlpha:k(d.centerlabelbgalpha,100),borderColor:g(d.centerlabelbordercolor,
R.borderColor),borderAlpha:k(d.centerlabelborderalpha,100),borderThickness:k(d.centerlabelborderthickness,R.borderThickness),borderRadius:k(d.centerlabelborderradius,R.borderRadius),textPadding:k(d.centerlabeltextpadding,R.borderPadding),padding:k(d.centerlabelpadding,2),bgOval:k(d.centerlabelbgoval,0),shadow:k(d.showcenterlabelshadow,0),hoverColor:d.centerlabelhovercolor&&da(g(d.centerlabelhovercolor)),hoverAlpha:k(d.centerlabelhoveralpha),toolText:ja(g(d.centerlabeltooltext,""))};100<m&&(m=100);
0>m&&(m=0);k(d.showlegend,0)&&(l.legend.enabled=!0,l.legend.reversed=!Boolean(k(d.reverselegend,0)),q.showInLegend=!0);for(M=0;M<T;M+=1)E=c[M],sa=C.getCleanValue(E.value,!0),null===sa||!ka&&0===sa||(n.push(E),Q+=sa);0===Q&&(n=[]);q.enableRotation=1<n.length?k(d.enablerotation,1):0;q.alphaAnimation=k(d.alphaanimation,1);q.is3D=t;q.placeLabelsInside=d.placevaluesinside;q.use3DLighting=X;q.pieYScale=k(d.pieyscale,40);1>q.pieYScale&&(q.pieYScale=1);100<=q.pieYScale&&(q.pieYScale=80);q.pieYScale/=100;
q.pieSliceDepth=k(d.pieslicedepth,15);1>q.pieSliceDepth&&(q.pieSliceDepth=1);q.managedPieSliceDepth=q.pieSliceDepth;q.enableMultiSlicing=!!r;t&&d.showplotborder!=Ka&&!ca&&(q.showBorderEffect=1);for(M=n.length-1;0<=M;M-=1){E=n[M];sa=C.getCleanValue(E.value,!0);y=ja(g(E.label,E.name,W));T=g(E.color,b.getPlotColor(M));L=g(E.alpha,d.plotfillalpha);u=g(E.bordercolor,O);F=g(E.borderalpha,d.plotborderalpha,d.pieborderalpha);t&&(u||void 0!==F)&&(q.showBorderEffect=0);u=g(u,ha(T,t?90:25)).split(aa)[0];F=d.showplotborder==
Da?Da:g(F,L,"80");L=g(L,Ia);ka={opacity:Math.max(L,F)/100};if(c=Boolean(k(E.issliced,d.issliced,0)))r||(-1!==oa&&(q.data[n.length-oa-1].sliced=!1),oa=M),a.preSliced=c;ca=(ta=k(E.dashed,S))?Fa(g(E.dashlen,N),g(E.dashgap,D),e):void 0;G=Aa(ja(g(E.tooltext,a.tooltext)));B=C.percentValue(sa/Q*100);U=C.dataLabels(sa)||W;V=1===k(E.showlabel,f)?y:W;ia=1===(s=k(E.showvalue,x))?1===p?B:U:W;A=Aa(ja(E.displayvalue));ia=void 0!==A&&s?A:ia!==W&&V!==W?V+fb+ia:g(V,ia);void 0!==G?G=Ga(G,[1,2,3,5,6,7,14,24,25],{formattedValue:U,
label:y,yaxisName:ja(d.yaxisname),xaxisName:ja(d.xaxisname),percentValue:B,sum:C.dataLabels(Q),unformattedSum:Q},E,d):(G=y,s=h?B:U,G=G!=W?G+z+s:s);s=K?y:W;H&&(w=fa?C.legendPercentValue(sa/Q*100):C.legendValue(sa),s=v?w+(s&&P+s):(s&&s+P)+w);ta=this.pointHoverOptions(E,q,{plotType:"pie",use3DLighting:X,color:T,alpha:L,borderWidth:e,borderColor:u,borderAlpha:F,borderDashed:ta,borderDashGap:g(E.dashgap,D),borderDashLen:k(E.dashlen,N),radius3D:m,shadow:ka});y={label:g(($=E.centerlabel||d.centerlabel)&&
this.replaceMacros($,["\\$value","\\$percentValue","\\$displayValue","\\$label"],[U,B,void 0===A?"":A,y]),""),font:J.font,fontSize:k(E.centerlabelfontsize,J.fontSize),color:da(g(E.centerlabelcolor,J.color)),alpha:k(E.centerlabelalpha,J.alpha),bold:k(E.centerlabelbold,J.bold),italic:k(E.centerlabelitalic,J.italic),bgColor:g(E.centerlabelbgcolor,J.bgColor),bgAlpha:k(E.centerlabelbgalpha,J.bgAlpha),borderColor:g(E.centerlabelbordercolor,J.borderColor),borderAlpha:k(E.centerlabelborderalpha,J.borderAlpha),
borderThickness:J.borderThickness,borderRadius:J.borderRadius,textPadding:J.textPadding,padding:J.padding,bgOval:J.bgOval,shadow:J.shadow,hoverColor:(Y=g(E.centerlabelhovercolor,J.hoverColor))&&da(Y),hoverAlpha:k(E.centerlabelhoveralpha,J.hoverAlpha),toolText:g(E.centerlabeltooltext,"")};q.data.push({displayValue:ia,style:cb(E,{},d,R,T),categoryLabel:V,showInLegend:s!==W,y:sa,name:s,shadow:ka,toolText:G,color:this.getPointColor(T,L,m),_3dAlpha:L,borderColor:na(u,F),borderWidth:e,link:Aa(E.link),sliced:c,
dashStyle:ca,doNotSlice:g(d.enableslicing,Ka)!=Ka,hoverEffects:ta.enabled&&ta.options,rolloverProperties:ta.enabled&&ta.rolloverOptions,centerLabelConfig:y})}I&&(q.reversePlotOrder=!0,q.data&&q.data.reverse());q.valueTotal=Q;l.legend.enabled=d.showlegend===Ka?!0:!1;q.startAngle=k(d.startingangle,0);l.chart.startingAngle=g(1<n.length?d.startingangle:0,0);return q},replaceMacros:function(a,q,c){for(var d=q.length||0,l;d--;)l=new RegExp(q[d],"gi"),a=a.replace(l,c[d]);return a},containsMacro:function(a,
q){for(var c=q.length||0,d;c--;)if(d=new RegExp(q[c],"gi"),d=a.match(d))return!0;return!1},getPointColor:function(a,q,c){var d,l;a=da(a);q=Ca(q);100>c&&la?(d=Math.floor(85*(100-.35*c))/100,d=ga(a,d),l=Math.floor(50*(100+c))/100,a=ha(a,l),q={FCcolor:{color:a+aa+d,alpha:q+aa+q,ratio:c+","+(100-c),radialGradient:!0,gradientUnits:"userSpaceOnUse"}}):q={FCcolor:{color:a+aa+a,alpha:q+aa+q,ratio:"0,100"}};return q},configureAxis:function(a,q){var c=0,d=a[ua],l=q.chart,b=a.xAxis.labels.style,t,ca;t=(t=Ha(l.valuebordercolor,
W))?na(t,k(l.valueborderalpha,l.valuealpha,100)):W;b={fontFamily:g(l.valuefont,b.fontFamily),fontSize:g(l.valuefontsize,parseInt(b.fontSize,10))+Sa,lineHeight:b.lineHeight,color:na(g(l.valuefontcolor,b.color),k(l.valuefontalpha,l.valuealpha,100)),fontWeight:k(l.valuefontbold)?"bold":"normal",fontStyle:k(l.valuefontitalic)?"italic":"normal",border:t||l.valuebgcolor?k(l.valueborderthickness,1)+"px solid":void 0,borderColor:t,borderThickness:k(l.valueborderthickness,1),borderPadding:k(l.valueborderpadding,
2),borderRadius:k(l.valueborderradius,0),backgroundColor:l.valuebgcolor?na(l.valuebgcolor,k(l.valuebgalpha,l.valuealpha,100)):W,borderDash:k(l.valueborderdashed,0)?Fa(k(l.valueborderdashlen,4),k(l.valueborderdashgap,2),k(l.valueborderthickness,1)):"none"};a.plotOptions.series.dataLabels.style=b;delete d.x;delete d[0];delete d[1];a.chart.plotBorderColor=a.chart.plotBackgroundColor=Ra;d=d.pieDATALabels=[];if(1===a.series.length&&(ca=a.series[0].data)&&0<(c=a.series[0].data.length)&&a.plotOptions.series.dataLabels.enabled)for(;c--;)ca[c]&&
void 0!==Aa(ca[c].displayValue)&&d.push({text:ca[c].displayValue,style:ca[c].style})},spaceManager:function(a,q,c,d){var l=a[ua],b=l.is3d,t=this.name,ca=this.colorManager,e=this.smartLabel||l.smartLabel,r=k(l.pieDATALabels&&l.pieDATALabels.length,0),X=0,m=q.chart,ka=k(m.managelabeloverflow,0),h=k(m.slicingdistance),f=l.preSliced||m.enableslicing!==Da||m.showlegend===Ka&&m.interactivelegend!==Da?ta(k(h,20)):0,x=k(m.pieradius,0),p=k(m.enablesmartlabels,m.enablesmartlabel,1),z=p?k(m.skipoverlaplabels,
m.skipoverlaplabel,1):0,T=k(m.issmartlineslanted,1),O=r?k(m.labeldistance,m.nametbdistance,5):f,C=k(m.smartlabelclearance,5);c-=a.chart.marginRight+a.chart.marginLeft;var S=d-(a.chart.marginTop+a.chart.marginBottom);d=ia(S,c);var v=g(m.smartlinecolor,ca.getColor("plotFillColor")),N=k(m.smartlinealpha,100),D=k(m.smartlinethickness,.7),H=a.plotOptions.series.dataLabels,ca=H.style,K=r?k(parseInt(ca.lineHeight,10),12):0,ca=a.series[0]||{},y=ca.pieYScale,fa=ca.pieSliceDepth;d=0===x?.15*d:x;var I=0,I=2*
d,P=k("doughnut2d"===t?0:m.placevaluesinside);H.connectorWidth=D;H.connectorPadding=k(m.connectorpadding,5);H.connectorColor=na(v,N);r&&(p&&(O=C),O+=f);C=I+2*(K+O);S-=this.titleSpaceManager(a,q,c,n(C<S?S-C:S/2,parseFloat(a.title.style.lineHeight,10)));m.showlegend===Ka&&(g(m.legendposition,Ya).toLowerCase()!==ab?S-=this.placeLegendBlockBottom(a,q,c,S/2,!0):c-=this.placeLegendBlockRight(a,q,c/3,S,!0));if(1!==r)for(;r--;)e.setStyle(l.pieDATALabels[r].style),q=e.getOriSize(l.pieDATALabels[r].text),X=
n(X,q.width);0===x&&(b?(S-=fa,I=ia(c/2-X-f,(S/2-K)/y)-O):I=ia(c/2-X-f,S/2-K)-O,I>=d?d=I:h||(f=O=n(ia(O-(d-I),f),10)));b&&(r=S-2*(d*y+K),fa>r&&(ca.managedPieSliceDepth=fa-r));a.plotOptions.pie3d.slicedOffset=a.plotOptions.pie.slicedOffset=f;a.plotOptions.pie3d.size=a.plotOptions.pie.size=2*d;a.plotOptions.series.dataLabels.distance=O;a.plotOptions.series.dataLabels.isSmartLineSlanted=T;a.plotOptions.series.dataLabels.enableSmartLabels=p;a.plotOptions.series.dataLabels.skipOverlapLabels=z;a.plotOptions.series.dataLabels.manageLabelOverflow=
ka;a.plotOptions.series.dataLabels.placeLabelsInside=P;if("doughnut2d"===t||"doughnut3d"===t)if(t=k(m.doughnutradius,0),r=(r=k(m.use3dlighting,1))?k(m.radius3d,m["3dradius"],50):100,100<r&&(r=100),0>r&&(r=0),m=0===t||t>=d?d/2:t,a.plotOptions.pie3d.innerSize=a.plotOptions.pie.innerSize=2*m,0<r&&la&&(m=parseInt(m/d*100,10),t=(100-m)/2,r=parseInt(t*r/100,10),m=m+aa+r+aa+2*(t-r)+aa+r,a.series[0]&&a.series[0].data))for(ka=a.series[0].data,a=0,r=ka.length;a<r;a+=1)t=ka[a],t.color.FCcolor&&(t.color.FCcolor.ratio=
m,t.rolloverProperties.color&&(t.rolloverProperties.color.FCcolor.ratio=m))},creditLabel:za,eiMethods:{isPlotItemSliced:function(a){var q=this.jsVars.hcObj,c,d,l;return q&&q.datasets&&q.datasets[0]&&(c=q.datasets[0].data)&&(l=c.length)&&c[a=l-a-1]&&(d=c[a].plot)&&d.sliced},slicePlotItem:function(a,q){var c=this.jsVars.hcObj,d,l,b,t;return c&&c.datasets&&(d=c.datasets[0])&&(l=d.data)&&(t=l.length)&&l[a=d.reversePlotOrder?a:t-a-1]&&(b=l[a].plot)&&((!!q!==b.sliced||void 0===q)&&c.plotGraphicClick.call(b)||
b.sliced)},centerLabel:function(a,q){var c=this.jsVars.hcObj,d=c.options,l=d.series[0],d=d.plotOptions.pie.innerSize,b=c.canvasLeft+.5*c.canvasWidth,t=c.canvasTop+.5*c.canvasHeight,ca=l.centerLabelConfig,e;if("object"!==typeof q)q=ca;else for(e in ca)void 0===q[e]&&(q[e]=ca[e]);q.label=a;l.centerLabelConfig=q;d&&c.drawDoughnutCenterLabel(a||"",b,t,d,d,q,!0)},startingAngle:function(a,q){var c=this.jsVars.hcObj,d=c.datasets[0].plot,l="pie"===c.options.chart.defaultSeriesType,b,t=(b=c.datasets[0].startAngle)*
(l?-J:1)+(0>(l?-1:1)*b?360:0);if(!isNaN(a)){if(d.singletonCase||d.isRotating)return;a+=q?t:0;l?((l=c.options.series[0]).startAngle=-a*Y,c.rotate(d,l)):c.rotate(a);t=a}return v(100*((t%=360)+(0>t?360:0)))/100}}},ya);p.pie2d.eiMethods.togglePieSlice=p.pie2d.eiMethods.sliceDataItem=p.pie2d.eiMethods.slicePlotItem;p.pie2d.eiMethods.enableSlicingMovement=p.pie2d.eiMethods.enablelink=function(){ra.raiseWarning(this,"1301081430","run","JSRenderer~enablelink()","Method deprecated.")};p("pie3d",{friendlyName:"3D Pie Chart",
defaultSeriesType:"pie3d",rendererId:"pie3d",creditLabel:za,fireGroupEvent:!0,getPointColor:function(a){return a},defaultPlotShadow:0},p.pie2d);p("doughnut2d",{friendlyName:"Doughnut Chart",getPointColor:function(a,q,c){var d;a=da(a);q=Ca(q);100>c&&la?(d=ga(a,u(100*(85-.2*(100-c)))/100),a=ha(a,u(100*(100-.5*c))/100),q={FCcolor:{color:d+","+a+","+a+","+d,alpha:q+","+q+","+q+","+q,radialGradient:!0,gradientUnits:"userSpaceOnUse",r:c}}):q={FCcolor:{color:a+","+a,alpha:q+","+q,ratio:"0,100"}};return q}},
p.pie2d);p("doughnut3d",{friendlyName:"3D Doughnut Chart",defaultSeriesType:"pie3d",rendererId:"pie3d",fireGroupEvent:!0,getPointColor:p.pie3d,defaultPlotShadow:0},p.doughnut2d);p("pareto2d",{standaloneInit:!0,friendlyName:"Pareto Chart",point:function(a,q,c,d,l){a=c.length;var b=0,t=0,e={},h=this.colorManager,r=/3d$/.test(l.chart.defaultSeriesType),X=this.isBar,m=g(360-d.plotfillangle,90),ka=g(d.showplotborder,r?Da:Ka)===Ka?r?1:k(d.plotborderthickness,1):0,f=l.chart.useRoundEdges,S=g(d.tooltipsepchar,
", "),x=g(d.plotbordercolor,h.getColor("plotBorderColor")).split(aa)[0],p=d.showplotborder==Da?Da:g(d.plotborderalpha,d.plotfillalpha,Ia),z=l.xAxis,T=k(d.showcumulativeline,1),O=l[ua],C=O.axisGridManager,n=O.x,v=d.showtooltip!=Da,N=[],D=k(d.use3dlighting,1),H=l[ua].numberFormatter,K=k(d.showlinevalues,d.showvalues),y=k(d.plotborderdashed,0),fa,I=k(d.plotborderdashlen,5),P=k(d.plotborderdashgap,4),R=ja(d.xaxisname),Q=ja(d.yaxisname),u=O.numberFormatter,F=q,M,sa,E,G,L,s,ia,V,B,J,U,A,ta,w,$,Y,ga,ea,
oa,Z,ha,ba,na,p=r?d.showplotborder?p:Da:p,x=r?g(d.plotbordercolor,"#FFFFFF"):x;E=k(d.useplotgradientcolor,1)?Wa(d.plotgradientcolor,h.getColor("plotGradientColor")):W;for($=sa=0;sa<a;sa+=1)oa=c[sa],c[sa].vline?C.addVline(z,oa,$,l):(M=H.getCleanValue(oa.value,!0),null!==M&&(t+=oa.value=M,N.push(oa),$+=1));a=N.length;N.sort(function(a,c){return c.value-a.value});T&&0<t?(J=k(d.linedashed,0),Z=da(g(d.linecolor,h.getColor("plotBorderColor"))),e=g(d.linealpha,100),U=k(d.linedashlen,5),G=k(d.linedashgap,
4),sa=k(d.linethickness,2),ta={opacity:e/100},w=k(d.drawanchors,d.showanchors),void 0===w&&(w=e!=Da),ga=k(d.anchorborderthickness,1),ea=k(d.anchorsides,0),fa=k(d.anchorradius,3),Y=da(g(d.anchorbordercolor,Z)),M=da(g(d.anchorbgcolor,h.getColor("anchorBgColor"))),$=Ca(g(d.anchoralpha,Ia)),c=Ca(g(d.anchorbgalpha,$))*$/100,J=J?Fa(U,G,sa):void 0,G=Boolean(k(oa.anchorshadow,d.anchorshadow,0)),U=this.pointHoverOptions(oa,q,{plotType:"anchor",anchorBgColor:M,anchorAlpha:$,anchorBgAlpha:c,anchorAngle:g(d.anchorstartangle,
90),anchorBorderThickness:ga,anchorBorderColor:Y,anchorBorderAlpha:$,anchorSides:ea,anchorRadius:fa,shadow:A}),e={yAxis:1,data:[],type:"line",color:{FCcolor:{color:Z,alpha:e}},lineWidth:sa,marker:{enabled:w,shadow:G&&1<=fa?{opacity:$/100}:!1,fillColor:{FCcolor:{color:M,alpha:c}},lineColor:{FCcolor:{color:Y,alpha:$}},lineWidth:ga,radius:fa,symbol:db(ea),startAngle:g(d.anchorstartangle,90)}},F=[F,e],O[1]||(O[1]={}),O[1].stacking100Percent=!0):("1"!==d.showsecondarylimits&&(d.showsecondarylimits="0"),
"1"!==d.showdivlinesecondaryvalue&&(d.showdivlinesecondaryvalue="0"));O[1]||(O[1]={});O[1].stacking100Percent=!0;for(sa=0;sa<a;sa+=1)oa=N[sa],A=k(oa.showlabel,d.showlabels,1),c=ja(A?Ha(oa.label,oa.name):W),ia=g(oa.color,h.getPlotColor()),C.addXaxisCat(z,sa,sa,c,oa,{},d,ia),b+=M=oa.value,G=k(oa.dashed,y),L=g(oa.dashgap,P),s=g(oa.dashlen,I),V=g(oa.alpha,d.plotfillalpha,Ia),B=g(oa.ratio,d.plotfillratio),A={opacity:V/100},ha=g(oa.alpha,p)+W,Z=ma(ia+aa+E.replace(/,+?$/,""),V,B,m,f,x+W,ha+W,X,r),fa=G?Fa(s,
L,ka):"none",$=b/t*100,ga=H.percentValue($),Y=null===M?M:u.dataLabels(M),ea=Aa(ja(oa.displayvalue)),ea=k(oa.showvalue,O.showValues)?void 0!==ea?ea:Y:W,O.showTooltip?void 0!==(w=Aa(ja(g(oa.tooltext,O.tooltext))))?(ba={formattedValue:Y,label:c,yaxisName:Q,xaxisName:R,cumulativeValue:b,cumulativeDataValue:u.dataLabels(b),cumulativePercentValue:ga,sum:u.dataLabels(t),unformattedSum:t},na=[1,2,3,5,6,7,20,21,22,23,24,25],w=Ga(w,na,ba,oa,d)):w=null===Y?!1:c!==W?c+O.tooltipSepChar+Y:Y:w=W,L=this.pointHoverOptions(oa,
q,{plotType:"column",is3d:r,isBar:X,use3DLighting:D,isRoundEdged:f,color:ia,gradientColor:E,alpha:V,ratio:B,angle:m,borderWidth:ka,borderColor:x,borderAlpha:ha,borderDashed:G,borderDashGap:L,borderDashLen:s,shadow:A}),G=g(oa.link),q.data.push({link:G,toolText:w,displayValue:ea,categoryLabel:c,y:M,shadow:A,color:Z[0],borderColor:Z[1],borderWidth:ka,use3DLighting:D,dashStyle:fa,tooltipConstraint:this.tooltipConstraint,hoverEffects:L.enabled&&L.options,rolloverProperties:L.enabled&&L.rolloverOptions}),
this.pointValueWatcher(l,M),T&&(M=Aa(ja(g(oa.cumulativeplottooltext,d.cumulativeplottooltext))),A=1==K?ga:0===K||ea===W?W:ga,w=v?void 0!==M?Ga(M,na||[1,2,3,5,6,7,20,21,22,23,24,25],ba||{formattedValue:Y,label:c,yaxisName:Q,xaxisName:R,cumulativeValue:b,cumulativeDataValue:u.dataLabels(b),cumulativePercentValue:ga,sum:u.dataLabels(t),unformattedSum:t},oa,d):(c!==W?c+S:W)+ga:W,e.data.push({shadow:ta,color:e.color,marker:e.marker,y:$,toolText:w,displayValue:A,categoryLabel:c,link:G,dashStyle:J,hoverEffects:U.enabled&&
U.options,rolloverProperties:U.enabled&&U.rolloverOptions}));n.catCount=a;return F},defaultSeriesType:"column",isDual:!0,creditLabel:za,rendererId:"cartesian"},ya);p("pareto3d",{friendlyName:"3D Pareto Chart",defaultSeriesType:"column3d",fireGroupEvent:!0,defaultPlotShadow:1,is3D:!0},p.pareto2d);p("mscolumn2d",{standaloneInit:!0,friendlyName:"Multi-series Column Chart",creditLabel:za,rendererId:"cartesian"},p.mscolumn2dbase);p("mscolumn3d",{defaultSeriesType:"column3d",friendlyName:"Multi-series 3D Column Chart",
defaultPlotShadow:1,fireGroupEvent:!0,is3D:!0,defaultZeroPlaneHighlighted:!1},p.mscolumn2d);p("msbar2d",{friendlyName:"Multi-series Bar Chart",isBar:!0,defaultSeriesType:"bar",spaceManager:p.barbase},p.mscolumn2d);p("msbar3d",{defaultSeriesType:"bar3d",friendlyName:"Multi-series 3D Bar Chart",fireGroupEvent:!0,defaultPlotShadow:1,is3D:!0,defaultZeroPlaneHighlighted:!1},p.msbar2d);p("msline",{standaloneInit:!0,friendlyName:"Multi-series Line Chart",creditLabel:za,rendererId:"cartesian"},p.mslinebase);
p("msarea",{standaloneInit:!0,friendlyName:"Multi-series Area Chart",creditLabel:za,rendererId:"cartesian"},p.msareabase);p("stackedcolumn2d",{friendlyName:"Stacked Column Chart",isStacked:!0},p.mscolumn2d);p("stackedcolumn3d",{friendlyName:"3D Stacked Column Chart",isStacked:!0},p.mscolumn3d);p("stackedbar2d",{friendlyName:"Stacked Bar Chart",isStacked:!0},p.msbar2d);p("stackedbar3d",{friendlyName:"3D Stacked Bar Chart",isStacked:!0},p.msbar3d);p("stackedarea2d",{friendlyName:"Stacked Area Chart",
isStacked:!0,areaAlpha:100,showSum:0},p.msarea);p("marimekko",{friendlyName:"Marimekko Chart",isValueAbs:!0,distributedColumns:!0,isStacked:!0,xAxisMinMaxSetter:Xa,postSeriesAddition:function(a,q){var c=a[ua],d=0,l=a.xAxis,b=100/c.marimekkoTotal,t=[],e=a.series,h=0,r=Ba({},a.plotOptions.series.dataLabels.style),X=parseInt(r.fontSize,10),m=k(q.chart.plotborderthickness,1),ka=a.chart.rotateValues,f=k(q.chart.rotatexaxispercentvalues,0),p=-.5*m-(m%2+(f?1:0)+!a.chart.plotBorderWidth),x=f?X/2*1.2:0,S=
ka?270:0,z=c[0],T=z.stacking100Percent,O=!T,C=c.inCanvasStyle,g=this.numberFormatter,n=q.categories&&q.categories[0]&&q.categories[0].category||[],N=0,D=[],H,K,y,fa,I,P,R,Q,ia,s,m=[];c.isXYPlot=!0;c.distributedColumns=!0;l.min=0;l.max=100;l.labels.enabled=!1;l.gridLineWidth=0;l.alternateGridColor=Ra;H=z.stack;q.chart.interactivelegend="0";z=0;for(K=a.xAxis.plotLines.length;z<K;z+=1)y=l.plotLines[z],y.isGrid&&(y.isCat=!0,t[y.value]=y,y._hideLabel=!0);for(z=K=0;z<n.length;z+=1)n[z].vline||(N+=D[K]=
g.getCleanValue(n[z].widthpercent||0),K+=1);y=H.floatedcolumn&&H.floatedcolumn[0]||[];if(100===N&&(y&&y.length)!==K)for(;K--;)y[K]||(y[K]={p:null});N=v(N);if(y)for(I=0,K=y.length;I<K;){s=y[I];d+=fa=s&&s.p||0;R=100===N?D[I]:fa*b;P=h+R/2;Q=h+R;m.push(Q);for(z=0;z<e.length;z+=1)if(a.series[z].visible=!0,n=a.series[z].data[I],n._FCX=h,n._FCW=R,ia=g.percentValue(n.y/fa*100),n.toolText=Ga(n.toolText,[14,24,25,111,112],{xAxisPercentValue:g.percentValue(R),percentValue:ia,sum:g.dataLabels(fa),unformattedSum:fa}),
T){if(n.y||0===n.y)H=n.y/fa*100,n.y=H,n.showPercentValues&&(n.displayValue=ia);if(n.previousY||0===n.previousY)n.previousY=n.previousY/fa*100}c.showStackTotal&&a.xAxis.plotLines.push({value:P,width:0,isVline:O,isTrend:!O,_isStackSum:1,zIndex:4,label:{align:Ua,textAlign:Ua,rotation:S,style:r,verticalAlign:$a,offsetScale:O?0>fa?s.n:s.p:void 0,offsetScaleIndex:0,y:0>fa?270===ka?4:X:-4,x:0,text:g.yAxis(Ta(fa,10))}});t[I]&&(t[I].value=P,t[I]._weight=R,t[I]._hideLabel=!1);I+=1;c.showXAxisPercentValues&&
I<K&&a.xAxis.plotLines.push({value:Q,width:0,isVine:!0,label:{align:Ua,textAlign:f?bb:Ua,rotation:f?270:0,backgroundColor:"#ffffff",backgroundOpacity:1,borderWidth:"1px",borderType:"solid",borderColor:C.color,style:{color:C.color,fontSize:C.fontSize,fontFamily:C.fontFamily,lineHeight:C.lineHeight},verticalAlign:Ya,y:p,x:x,text:this.numberFormatter.percentValue(Q)},zIndex:5});h=Q}I=0;for(K=t.length;I<K;I+=1)t[I]&&t[I]._hideLabel&&(t[I].value=null);z=0;for(K=a.xAxis.plotLines.length;z<K;z+=1)if(y=l.plotLines[z],
y.isVline&&!y._isStackSum&&(c=y.value))c-=.5,d=m[u(c)],b=m[F(c)],y.value=d+(b-d)*(c-u(c))},defaultSeriesType:"floatedcolumn"},p.stackedcolumn2d);p("msstackedcolumn2d",{friendlyName:"Multi-series Stacked Column Chart",series:function(a,q,c){var d,l,b,t,e=q[ua],h=0,r,X;r=[];var m;q.legend.enabled=Boolean(k(a.chart.showlegend,1));if(a.dataset&&0<a.dataset.length){this.categoryAdder(a,q);d=0;for(l=a.dataset.length;d<l;d+=1)if(m=a.dataset[d].dataset)for(b=0,t=m.length;b<t;b+=1,h+=1)r={hoverEffects:this.parseSeriesHoverOptions(a,
q,m[b],c),visible:!k(m[b].initiallyhidden,0),data:[],numColumns:l,columnPosition:d},X=Math.min(e.oriCatTmp.length,m[b].data&&m[b].data.length),r=this.point(c,r,m[b],a.chart,q,X,h,d),q.series.push(r);if(this.isDual&&a.lineset&&0<a.lineset.length)for(b=0,t=a.lineset.length;b<t;b+=1,h+=1)d=a.lineset[b],r={hoverEffects:this.parseSeriesHoverOptions(a,q,d,c),visible:!k(d.initiallyhidden,0),data:[],yAxis:1,type:"line"},X=Math.min(e.oriCatTmp.length,d.data&&d.data.length),q.series.push(p.msline.point.call(this,
"msline",r,d,a.chart,q,X,h));this.configureAxis(q,a);a.trendlines&&Va(a.trendlines,q.yAxis,q[ua],this.isDual,this.isBar)}},postSpaceManager:function(a,q,c){var d=a[ua],b,e,t;p.base.postSpaceManager.call(this);if(this.isStacked&&d.showStackTotal&&(b=a.chart,a=(q=a.xAxis)&&q.plotLines,b=c-b.marginLeft-b.marginRight,c=d.plotSpacePercent,d=d[0].stack,d=d.column&&d.column.length,e=(1-2*c)/d,q=b/(q.max-q.min),50<q*e&&.1==c))for(q=50/q,c=a&&a.length,d=-((d-1)/2)*q,t=0;t<c;t+=1)e=a[t],e._isStackSum&&(b=e._catPosition+
(d+q*e._stackIndex),e.value=b)}},p.stackedcolumn2d);p("mscombi2d",{friendlyName:"Multi-series Combination Chart",standaloneInit:!0,creditLabel:za,rendererId:"cartesian"},p.mscombibase);p("mscombi3d",{friendlyName:"Multi-series 3D Combination Chart",series:p.mscombi2d.series,eiMethods:function(a){var q={};xa(a.split(","),function(a){q[a]=function(){ra.raiseWarning(this,"1301081430","run","JSRenderer~"+a+"()","Method not applicable.")}});return q}("view2D,view3D,resetView,rotateView,getViewAngles,fitToStage")},
p.mscolumn3d);p("mscolumnline3d",{friendlyName:"Multi-series Column and Line Chart"},p.mscombi3d);p("stackedcolumn2dline",{friendlyName:"Stacked Column and Line Chart",isStacked:!0,stack100percent:0},p.mscombi2d);p("stackedcolumn3dline",{friendlyName:"Stacked 3D Column and Line Chart",isStacked:!0,stack100percent:0},p.mscombi3d);p("mscombidy2d",{friendlyName:"Multi-series Dual Y-Axis Combination Chart",isDual:!0,secondarySeriesType:void 0},p.mscombi2d);p("mscolumn3dlinedy",{friendlyName:"Multi-series 3D Column and Line Chart",
isDual:!0,secondarySeriesType:"line"},p.mscolumnline3d);p("stackedcolumn3dlinedy",{friendlyName:"Stacked 3D Column and Line Chart",isDual:!0,secondarySeriesType:"line"},p.stackedcolumn3dline);p("msstackedcolumn2dlinedy",{friendlyName:"Multi-series Dual Y-Axis Stacked Column and Line Chart",isDual:!0,stack100percent:0,secondarySeriesType:"line"},p.msstackedcolumn2d);p("scrollcolumn2d",{friendlyName:"Scrollable Multi-series Column Chart",postSeriesAddition:p.scrollbase.postSeriesAddition,tooltipConstraint:"plot",
canvasborderthickness:1,avgScrollPointWidth:40},p.mscolumn2d);p("scrollline2d",{friendlyName:"Scrollable Multi-series Line Chart",postSeriesAddition:p.scrollbase.postSeriesAddition,tooltipConstraint:"plot",canvasborderthickness:1,avgScrollPointWidth:75},p.msline);p("scrollarea2d",{friendlyName:"Scrollable Multi-series Area Chart",postSeriesAddition:p.scrollbase.postSeriesAddition,tooltipConstraint:"plot",canvasborderthickness:1,avgScrollPointWidth:75},p.msarea);p("scrollstackedcolumn2d",{friendlyName:"Scrollable Stacked Column Chart",
postSeriesAddition:function(a,q,c,d){p.base.postSeriesAddition.call(this,a,q,c,d);p.scrollbase.postSeriesAddition.call(this,a,q,c,d)},canvasborderthickness:1,tooltipConstraint:"plot",avgScrollPointWidth:75},p.stackedcolumn2d);p("scrollcombi2d",{friendlyName:"Scrollable Combination Chart",postSeriesAddition:p.scrollbase.postSeriesAddition,tooltipConstraint:"plot",canvasborderthickness:1,avgScrollPointWidth:40},p.mscombi2d);p("scrollcombidy2d",{friendlyName:"Scrollable Dual Y-Axis Combination Chart",
postSeriesAddition:p.scrollbase.postSeriesAddition,tooltipConstraint:"plot",canvasborderthickness:1,avgScrollPointWidth:40},p.mscombidy2d);p("scatter",{friendlyName:"Scatter Chart",isXY:!0,standaloneInit:!0,defaultSeriesType:"scatter",defaultZeroPlaneHighlighted:!1,creditLabel:za},p.scatterbase);p("bubble",{friendlyName:"Bubble Chart",standaloneInit:!0,standaloneInut:!0,defaultSeriesType:"bubble",rendererId:"bubble",point:function(a,q,c,d,b){a=k(d.ignoreemptydatasets,0);var e=!1,t=this.colorManager,
ca,h,r,X,m,ka,f,p,x,S,z,T,O,C,n,y,N=k(c.showvalues,b[ua].showValues);ca=k(d.bubblescale,1);var D=g(d.negativecolor,"FF0000"),H=b.plotOptions.bubble,K=this.numberFormatter,v=q._showRegression=k(c.showregressionline,d.showregressionline,0),u,I,P,R;q.name=Aa(c.seriesname);r=Boolean(k(c.drawanchors,c.showanchors,d.drawanchors,1));p=g(c.plotfillalpha,c.bubblefillalpha,d.plotfillalpha,Ia);x=k(c.showplotborder,d.showplotborder,1);S=da(g(c.plotbordercolor,d.plotbordercolor,"666666"));z=g(c.plotborderthickness,
d.plotborderthickness,1);T=g(c.plotborderalpha,d.plotborderalpha,"95");x=1===x?z:0;t=g(c.color,c.plotfillcolor,d.plotfillcolor,t.getPlotColor());q.marker={enabled:r,fillColor:this.getPointColor(t,Ia),lineColor:na(S,x?T:0),lineWidth:x,symbol:"circle"};if(z=c.data){y=z.length;H.bubbleScale=ca;if(0===k(c.includeinlegend)||void 0===q.name)q.showInLegend=!1;v&&(q.events={hide:this.hideRLine,show:this.showRLine},u={sumX:0,sumY:0,sumXY:0,sumXsqure:0,sumYsqure:0,xValues:[],yValues:[]},I=k(c.showyonx,d.showyonx,
1),P=da(g(c.regressionlinecolor,d.regressionlinecolor,t)),R=k(c.regressionlinethickness,d.regressionlinethickness,1),ca=Ca(k(c.regressionlinealpha,d.regressionlinealpha,100)),P=na(P,ca));for(h=0;h<y;h+=1)(X=z[h])?(ca=K.getCleanValue(X.y),O=K.getCleanValue(X.x),C=K.getCleanValue(X.z,!0),null===ca?q.data.push({y:null,x:O}):(e=!0,f=0!==k(d.use3dlighting,X.is3d,c.is3d,d.is3d),m=da(g(X.color,0>X.z?D:t)),ka=g(X.alpha,p),n=this.getPointStub(X,ca,O,b,c,N),m=f?this.getPointColor(m,ka):{FCcolor:{color:m,alpha:ka}},
null!==C&&(H.zMax=H.zMax>C?H.zMax:C,H.zMin=H.zMin<C?H.zMin:C),X=this.pointHoverOptions(X,q,{plotType:"bubble",is3d:f,seriesAnchorSymbol:"circle",color:m,negativeColor:D,alpha:ka,borderWidth:x,borderColor:S,borderAlpha:T,shadow:!1}),q.data.push({y:ca,x:O,z:C,displayValue:n.displayValue,toolText:n.toolText,link:n.link,hoverEffects:X.enabled&&X.options,rolloverProperties:X.enabled&&X.rolloverOptions,marker:{enabled:r,fillColor:m,lineColor:{FCcolor:{color:S,alpha:T}},lineWidth:x,symbol:"circle"}}),this.pointValueWatcher(b,
ca,O,v&&u))):q.data.push({y:null});v&&(c={type:"line",color:P,showInLegend:!1,lineWidth:R,enableMouseTracking:!1,marker:{enabled:!1},data:this.getRegressionLineSeries(u,I,y),zIndex:0},q=[q,c])}a&&!e&&(q.showInLegend=!1);return q},getPointStub:function(a,q,c,d,b,e){var t=this.dataObj.chart;d=d[ua];q=null===q?q:d.numberFormatter.dataLabels(q);var ca,h=d.tooltipSepChar,r=Aa(ja(g(a.tooltext,b.plottooltext,d.tooltext)));d.showTooltip?void 0!==r?b=Ga(r,[4,5,6,7,8,9,10,11,12,13,118],{yDataValue:q,xDataValue:d.numberFormatter.xAxis(c),
yaxisName:ja(t.yaxisname),xaxisName:ja(t.xaxisname),zDataValue:d.numberFormatter.dataLabels(a.z)},a,t,b):null===q?b=!1:(d.seriesNameInToolTip&&(ca=g(b&&b.seriesname)),b=ca?ca+h:W,b+=c?d.numberFormatter.xAxis(c)+h:W,b=b+q+(a.z?h+d.numberFormatter.dataLabels(a.z):W)):b=W;c=k(a.showvalue,e,d.showValues)?void 0!==g(a.displayvalue,a.name,a.label)?ja(g(a.displayvalue,a.name,a.label)):q:W;a=Aa(a.link);return{displayValue:c,toolText:b,link:a}}},p.scatter);p("ssgrid",{friendlyName:"Grid Component",standaloneInit:!0,
defaultSeriesType:"ssgrid",rendererId:"ssgrid",chart:function(a,b){var c=this.containerElement,d=Ba({},this.dataObj),l=d.chart||(d.chart=d.graph||{}),e=this.chartInstance,t=0,ca=[],h=d.data,r=h&&h.length,X=this.smartLabel,m=this.numberFormatter,f=c.offsetHeight,S=c.offsetWidth,T=this.colorManager,x,n,z,y,O,C,v,u,N,D,H,K,ia,fa,I,P,R,Q,F,U,M,sa,E,G,L,V=0;n=0;var c={_FCconf:{0:{stack:{}},1:{stack:{}},x:{stack:{}},noWrap:!1,marginLeftExtraSpace:0,marginRightExtraSpace:0,marginBottomExtraSpace:0,marginTopExtraSpace:0,
marimekkoTotal:0},chart:{ignoreHiddenSeries:!1,events:{},spacingTop:0,spacingRight:0,spacingBottom:0,spacingLeft:0,marginTop:0,marginRight:0,marginBottom:0,marginLeft:0,borderRadius:0,borderColor:"#000000",borderWidth:1,defaultSeriesType:"ssgrid",style:{fontFamily:g(l.basefont,"Verdana,sans"),fontSize:Na(l.basefontsize,20)+Sa,color:g(l.basefontcolor,T.getColor("baseFontColor")).replace(/^#?([a-f0-9]+)/ig,"#$1")},plotBackgroundColor:Ra},labels:{smartLabel:X},colors:"AFD8F8 F6BD0F 8BBA00 FF8E46 008E8E D64646 8E468E 588526 B3AA00 008ED6 9D080D A186BE CC6600 FDC689 ABA000 F26D7D FFF200 0054A6 F7941C CC3300 006600 663300 6DCFF6".split(" "),
credits:{href:s.CREDIT_HREF,text:s.CREDIT_STRING,enabled:za},legend:{enabled:!1},series:[],subtitle:{text:W},title:{text:W},tooltip:{enabled:!1},exporting:{buttons:{exportButton:{},printButton:{enabled:!1}}}},B=c[ua],J=x=n=V=0,A=t=fa=0;L=e.jsVars.cfgStore;e=c.chart;O=e.toolbar={button:{}};C=O.button;delete d.graph;Z(c.chart.style);e.events.click=this.linkClickFN;C.scale=k(l.toolbarbuttonscale,1.15);C.width=k(l.toolbarbuttonwidth,15);C.height=k(l.toolbarbuttonheight,15);C.radius=k(l.toolbarbuttonradius,
2);C.spacing=k(l.toolbarbuttonspacing,5);C.fill=na(g(l.toolbarbuttoncolor,"ffffff"));C.labelFill=na(g(l.toolbarlabelcolor,"cccccc"));C.symbolFill=na(g(l.toolbarsymbolcolor,"ffffff"));C.hoverFill=na(g(l.toolbarbuttonhovercolor,"ffffff"));C.stroke=na(g(l.toolbarbuttonbordercolor,"bbbbbb"));C.symbolStroke=na(g(l.toolbarsymbolbordercolor,"9a9a9a"));C.strokeWidth=k(l.toolbarbuttonborderthickness,1);C.symbolStrokeWidth=k(l.toolbarsymbolborderthickness,1);d=C.symbolPadding=k(l.toolbarsymbolpadding,5);C.symbolHPadding=
k(l.toolbarsymbolhpadding,d);C.symbolVPadding=k(l.toolbarsymbolvpadding,d);C=O.position=g(l.toolbarposition,"tr").toLowerCase();switch(C){case "tr":case "tl":case "br":case "bl":break;default:C="tr"}d=O.hAlign="left"===(W+l.toolbarhalign).toLowerCase()?"l":C.charAt(1);C=O.vAlign="bottom"===(W+l.toolbarvalign).toLowerCase()?"b":C.charAt(0);O.hDirection=k(l.toolbarhdirection,"r"===d?-1:1);O.vDirection=k(l.toolbarvdirection,"b"===C?-1:1);O.vMargin=k(l.toolbarvmargin,6);O.hMargin=k(l.toolbarhmargin,10);
O.x=k(l.toolbarx,"l"===d?0:a);O.y=k(l.toolbary,"t"===C?0:b);void 0!==g(l.clickurl)&&(e.link=l.clickurl,e.style.cursor="pointer");x=k(L.showpercentvalues,l.showpercentvalues,0);n=g(L.numberitemsperpage,l.numberitemsperpage);k(L.showshadow,l.showshadow,0);t=g(L.basefont,l.basefont,"Verdana,sans");z=Na(L.basefontsize,l.basefontsize,10);z+=Sa;y=da(g(L.basefontcolor,l.basefontcolor,T.getColor("baseFontColor")));d=da(g(L.alternaterowbgcolor,l.alternaterowbgcolor,T.getColor("altHGridColor")));O=g(L.alternaterowbgalpha,
l.alternaterowbgalpha,T.getColor("altHGridAlpha"))+W;C=k(L.listrowdividerthickness,l.listrowdividerthickness,1);v=da(g(L.listrowdividercolor,l.listrowdividercolor,T.getColor("borderColor")));u=k(L.listrowdivideralpha,l.listrowdivideralpha,T.getColor("altHGridAlpha"))+15+W;N=k(L.colorboxwidth,l.colorboxwidth,8);D=k(L.colorboxheight,l.colorboxheight,8);H=k(L.navbuttonradius,l.navbuttonradius,7);K=da(g(L.navbuttoncolor,l.navbuttoncolor,T.getColor("canvasBorderColor")));ia=da(g(L.navbuttonhovercolor,
l.navbuttonhovercolor,T.getColor("altHGridColor")));fa=k(L.textverticalpadding,l.textverticalpadding,3);I=k(L.navbuttonpadding,l.navbuttonpadding,5);P=k(L.colorboxpadding,l.colorboxpadding,10);R=k(L.valuecolumnpadding,l.valuecolumnpadding,10);Q=k(L.namecolumnpadding,l.namecolumnpadding,5);F=k(L.borderthickness,l.borderthickness,1);U=da(g(L.bordercolor,l.bordercolor,T.getColor("borderColor")));M=g(L.borderalpha,l.borderalpha,T.getColor("borderAlpha"))+W;sa=g(L.bgcolor,l.bgcolor,"FFFFFF");E=g(L.bgalpha,
l.bgalpha,Ia);G=g(L.bgratio,l.bgratio,Ia);L=g(L.bgangle,l.bgangle,Da);e.borderRadius=F/16;e.borderWidth=F;e.borderColor=w({FCcolor:{color:U,alpha:M}});e.backgroundColor={FCcolor:{color:sa,alpha:E,ratio:G,angle:L}};e.borderRadius=k(l.borderradius,0);L={fontFamily:t,fontSize:z,color:y};Z(L);X.setStyle(L);for(t=0;t<r;t+=1)if(z=h[t],F=m.getCleanValue(z.value),U=ja(Ha(z.label,z.name)),y=da(g(z.color,T.getPlotColor())),g(z.alpha,l.plotfillalpha,Ia),U!=W||null!=F)ca.push({value:F,label:U,color:y}),V+=F,
A+=1;for(t=0;t<A;t+=1)z=ca[t],F=z.value,z.dataLabel=z.label,z.displayValue=x?m.percentValue(F/V*100):m.dataLabels(F),h=X.getOriSize(z.displayValue),J=Math.max(J,h.width+R);n?n>=A?(x=f/A,n=A):(m=f-2*(I+H),x=m/n):(V=parseInt(L.lineHeight,10),V=Math.max(V+2*fa,D),n=f/V,n>=A?(x=f/A,n=A):(m=f-2*(I+H),n=Math.floor(m/V),x=m/n));fa=S-P-N-Q-J-R;t=P+N+Q;m=g(l.basefont,"Verdana,sans");J=Na(l.basefontsize,10);T=g(l.basefontcolor,T.getColor("baseFontColor"));h=g(l.outcnvbasefont,m);z=Na(l.outcnvbasefontsize,J);
r=z+Sa;l=g(l.outcnvbasefontcolor,T).replace(/^#?([a-f0-9]+)/ig,"#$1");J+=Sa;T=T.replace(/^#?([a-f0-9]+)/ig,"#$1");B.trendStyle=B.outCanvasStyle={fontFamily:h,color:l,fontSize:r};Z(B.trendStyle);B.inCanvasStyle={fontFamily:m,fontSize:J,color:T};c.tooltip.style={fontFamily:m,fontSize:J,lineHeight:void 0,color:T};c.tooltip.shadow=!1;e.height=f;e.width=S;e.rowHeight=x;e.labelX=t;e.colorBoxWidth=N;e.colorBoxHeight=D;e.colorBoxX=P;e.valueX=P+N+Q+fa+R;e.valueColumnPadding=R;e.textStyle=L;e.listRowDividerAttr=
{"stroke-width":C,stroke:{FCcolor:{color:v,alpha:u}}};e.alternateRowColor={FCcolor:{color:d,alpha:O}};e.navButtonRadius=H;e.navButtonPadding=I;e.navButtonColor=K;e.navButtonHoverColor=ia;e.lineHeight=parseInt(L.lineHeight,10);f=[];l=0;B=!0;for(t=0;t<A&0!==n;t+=1)0===t%n&&(f.push({data:[],visible:B}),B=!1,l+=1),z=ca[t],S=X.getSmartText(z.dataLabel,fa,x),f[l-1].data.push({label:S.text,originalText:S.tooltext,displayValue:z.displayValue,y:z.value,color:z.color});c.series=f;p.base.parseExportOptions.call(this,
c);c.tooltip.enabled=!!c.exporting.enabled;return c},creditLabel:za},p.base);p("renderer.bubble",{drawPlotBubble:function(a,q){var c=this,d=c.options,l=d.chart,h=d.plotOptions.series,t=h.dataLabels&&h.dataLabels.style||{},ca={fontFamily:t.fontFamily,fontSize:t.fontSize,lineHeight:t.lineHeight,fontWeight:t.fontWeight,fontStyle:t.fontStyle},t=c.paper,f=c.elements,r=a.items,X=a.graphics=a.graphics||[],m=c.xAxis[q.xAxis||0],ka=c.yAxis[q.yAxis||0],T=a.data,S=!1!==(d.tooltip||{}).enabled,x,n,h=isNaN(+h.animation)&&
h.animation.duration||1E3*h.animation,z=!1===q.visible?"hidden":"visible",d=d.plotOptions.bubble,p=d.zMax,d=d.bubbleScale,g=ia(c.canvasHeight,c.canvasWidth)/8,p=$(p),C,y,u,N,D,H,K,F,V,I,P;C=c.layers;y=C.dataset=C.dataset||t.group("dataset-orphan");var R=C.tracker,Q,A,J=function(a){va.call(this,c,a)},M=function(a,d,b){return function(q){a.attr(d);va.call(this,c,q,b)}};c.addCSSDefinition(".fusioncharts-datalabels .fusioncharts-label",ca);C.datalabels?C.datalabels.attr("class","fusioncharts-datalabels"):
C.datalabels=t.group({"class":"fusioncharts-datalabels"},"datalables").insertAfter(y);ca=y.bubble=y.bubble||t.group("bubble",y);l.clipBubbles&&!ca.attrs["clip-rect"]&&ca.attr({"clip-rect":f["clip-canvas"]});C=0;for(y=T.length;C<y;C+=1){u=T[C];I=P=A=null;V=u.marker;if(null!==u.y&&V&&V.enabled){N=u.link;l=u.toolText;D=k(u.x,C);H=u.y;f={index:C,link:N,value:H,y:H,x:D,z:u.z,displayValue:u.displayValue,toolText:u.toolText,id:a.userID,datasetIndex:a.index,datasetName:a.name,visible:a.visible};F=ka.getAxisPosition(H);
K=m.getAxisPosition(D);n=$(u.z);Q=v(n*g/p)*d||0;n=x={};u.hoverEffects&&(n={fill:w(V.fillColor),"stroke-width":V.lineWidth,stroke:w(V.lineColor),r:Q},x=u.rolloverProperties,x={fill:w(x.fillColor),"stroke-width":x.lineWidth,stroke:w(x.lineColor),r:Q*x.scale});I=t.circle(K,F,0,ca).attr({fill:w(V.fillColor),"stroke-width":V.lineWidth,stroke:w(V.lineColor),visibility:z}).animate({r:Q||0},h,"easeOut",c.getAnimationCompleteFn());if(N||S)Q<b&&(Q=b),P=t.circle(K,F,Q,R).attr({cursor:N?"pointer":"",stroke:e,
"stroke-width":V.lineWidth,fill:e,ishot:!!N,visibility:z});(P||I).data("eventArgs",f).click(J).hover(M(I,x,"DataPlotRollOver"),M(I,n,"DataPlotRollOut")).tooltip(l);r[C]={index:C,x:D,y:H,z:u.z,value:H,graphic:I,dataLabel:A,tracker:P};A=c.drawPlotLineLabel(a,q,C,K,F)}else r[C]={index:C,x:D,y:H};A&&X.push(A);I&&X.push(I);P&&X.push(P)}a.visible=!1!==q.visible;return a}},p["renderer.cartesian"]);p("renderer.ssgrid",{drawGraph:function(){var a=this.options.series,b=this.elements,c=b.plots,d=a.length,l;
c||(c=this.plots=this.plots||[],b.plots=c);this.drawSSGridNavButton();for(l=0;l<d;l++)(b=c[l])||c.push(b={items:[],data:a[l].data}),a[l].data&&a[l].data.length&&this.drawPlot(b,a[l]);1<d&&this.nenagitePage(0)},drawPlot:function(a){var b=a.data,c=this.paper,d=this.options.chart,l=d.colorBoxHeight,e=d.colorBoxWidth,t=d.colorBoxX,h=d.labelX,f=d.valueX,r=d.rowHeight,k=d.width,m=d.listRowDividerAttr,ka=m["stroke-width"],m=w(m.stroke),T=ka%2/2,S=d.textStyle,x=this.layers,x=x.dataset=x.dataset||c.group("dataset-orphan"),
d=w(d.alternateRowColor);a=a.items;var n=0,z,p,y,C;b&&b.length||(b=[]);m={stroke:m,"stroke-width":ka};C=0;for(ka=b.length;C<ka;C+=1)y=b[C],p=y.y,z=a[C]={index:C,value:p,graphic:null,dataLabel:null,dataValue:null,alternateRow:null,listRowDivider:null,hot:null},null!==p&&void 0!==p&&(0===C%2&&(z.alternateRow=c.rect(0,n,k,r,0,x).attr({fill:d,"stroke-width":0})),p=v(n)+T,z.listRowDivider=c.path(["M",0,p,"L",k,p],x).attr(m),z.graphic=c.rect(t,n+r/2-l/2,e,l,0,x).attr({fill:y.color,"stroke-width":0,stroke:"#000000"}),
p=z.dataLabel=c.text().attr({text:y.label,title:y.originalText||"",x:h,y:n+r/2,fill:S.color,"text-anchor":"start"}).css(S),x.appendChild(p),z=z.dataValue=c.text().attr({text:y.displayValue,title:y.originalText||"",x:f,y:n+r/2,fill:S.color,"text-anchor":"start"}).css(S),x.appendChild(z),n+=r);p=v(n)+T;c.path(["M",0,p,"L",k,p],x).attr(m)},drawSSGridNavButton:function(){var a=this,b=a.paper,c=a.options,d=c.chart,l=c.series,e=d.navButtonColor,t=d.navButtonHoverColor,c=d.navButtonRadius,h=.67*c,f=d.navButtonPadding+
h+(l&&l[0].data&&l[0].data.length*d.rowHeight)+.5*c,d=d.width-20,r,k,m,ka;1<l.length&&(ka=a.naviigator=b.group("navigation"),a.navElePrv=l=b.group(ka),r=b.path(["M",20,f,"L",20+c+h,f-h,20+c,f,20+c+h,f+h,"Z"]).attr({fill:e,"stroke-width":0,cursor:"pointer"}),l.appendChild(r),m=b.circle(20+c,f,c).attr({fill:Ra,"stroke-width":0,cursor:"pointer"}).mouseover(function(){r.attr({fill:t,cursor:"pointer"})}).mouseout(function(){r.attr({fill:e})}).click(function(){a.nenagitePage(-1)}),l.appendChild(m),a.navEleNxt=
l=b.group(ka),k=b.path(["M",d,f,"L",d-c-h,f-h,d-c,f,d-c-h,f+h,"Z"]).attr({fill:e,"stroke-width":0,cursor:"pointer"}),l.appendChild(k),b=b.circle(d-c,f,c).attr({fill:Ra,"stroke-width":0,cursor:"pointer"}).mouseover(function(){k.attr({fill:t})}).mouseout(function(){k.attr({fill:e})}).click(function(){a.nenagitePage(1)}),l.appendChild(b))},nenagitePage:function(a){var b=this.plots,c=b.length;a=(this.currentSeriesIndex||0)+(a||0);var d,l=function(a){a.graphic&&a.graphic.hide();a.dataLabel&&a.dataLabel.hide();
a.dataValue&&a.dataValue.hide();a.alternateRow&&a.alternateRow.hide();a.listRowDivider&&a.listRowDivider.hide()};if(b[a]){for(d=c;d--;)xa(b[d].items,l);xa(b[a].items,function(a){a.graphic&&a.graphic.show();a.dataLabel&&a.dataLabel.show();a.dataValue&&a.dataValue.show();a.alternateRow&&a.alternateRow.show();a.listRowDivider&&a.listRowDivider.show()});this.currentSeriesIndex=a;ra.raiseEvent("pageNavigated",{pageId:a,data:this.options.series[a].data},this.logic.chartInstance);0===a?this.navElePrv.hide():
this.navElePrv.show();a===c-1?this.navEleNxt.hide():this.navEleNxt.show()}}},p["renderer.root"]);Ma.prototype={getArcPath:function(a,b,c,d,l,e,t,h,f,r){return c==l&&d==e?[]:["A",t,h,0,r,f,l,e]},parseColor:function(a,b){var c,d,l,e,t,h,f,r,k,m,ka=b/2,T,p,x,n,z;z=3;this.use3DLighting?(c=ga(a,80),d=ga(a,75),h=ha(a,85),f=ha(a,70),r=ha(a,40),k=ha(a,50),ha(a,30),m=ha(a,65),ga(a,85),l=ga(a,69),e=ga(a,75),t=ga(a,95)):(z=10,c=ga(a,90),d=ga(a,87),h=ha(a,93),f=ha(a,87),r=ha(a,80),m=k=ha(a,85),ha(a,80),t=ga(a,
85),l=ga(a,75),e=ga(a,80));T=d+aa+h+aa+f+aa+h+aa+d;x=b+aa+b+aa+b+aa+b+aa+b;p=d+aa+a+aa+h+aa+a+aa+d;n=ka+aa+ka+aa+ka+aa+ka+aa+ka;r=d+aa+a+aa+r+aa+a+aa+d;l=e+aa+h+aa+k+aa+h+aa+l;e="FFFFFF"+aa+"FFFFFF"+aa+"FFFFFF"+aa+"FFFFFF"+aa+"FFFFFF";z=0+aa+ka/z+aa+b/z+aa+ka/z+aa+0;return{frontOuter:{FCcolor:{gradientUnits:"userSpaceOnUse",x1:this.leftX,y1:0,x2:this.rightX,y2:0,color:l,alpha:x,angle:0,ratio:"0,20,15,15,50"}},backOuter:{FCcolor:{gradientUnits:"userSpaceOnUse",x1:this.leftX,y1:0,x2:this.rightX,y2:0,
color:r,alpha:n,angle:0,ratio:"0,62,8,8,22"}},frontInner:{FCcolor:{gradientUnits:"userSpaceOnUse",x1:this.leftInnerX,y1:0,x2:this.rightInnerX,y2:0,color:p,alpha:n,angle:0,ratio:"0,25,5,5,65"}},backInner:{FCcolor:{gradientUnits:"userSpaceOnUse",x1:this.leftInnerX,y1:0,x2:this.rightInnerX,y2:0,color:T,alpha:x,angle:0,ratio:"0,62,8,8,22"}},topBorder:{FCcolor:{gradientUnits:"userSpaceOnUse",x1:this.leftX,y1:0,x2:this.rightX,y2:0,color:e,alpha:z,angle:0,ratio:"0,20,15,15,50"}},topInnerBorder:{FCcolor:{gradientUnits:"userSpaceOnUse",
x1:this.leftInnerX,y1:0,x2:this.rightInnerX,y2:0,color:e,alpha:z,angle:0,ratio:"0,50,15,15,20"}},top:la?{FCcolor:{gradientUnits:"userSpaceOnUse",radialGradient:!0,cx:this.cx,cy:this.cy,r:this.rx,fx:this.cx-.3*this.rx,fy:this.cy+1.2*this.ry,color:m+aa+t,alpha:b+aa+b,ratio:"0,100"}}:{FCcolor:{gradientUnits:"objectBoundingBox",color:f+aa+f+aa+h+aa+d,alpha:b+aa+b+aa+b+aa+b,angle:-72,ratio:"0,8,15,77"}},bottom:w(na(a,ka)),startSlice:w(na(c,b)),endSlice:w(na(c,b))}},rotate:function(a){if(!this.hasOnePoint){for(var b=
this.pointElemStore,c=0,d=b.length,l;c<d;c+=1)l=b[c],l=l._confObject,l.start+=a,l.end+=a,this.updateSliceConf(l);this.refreshDrawing()}},refreshDrawing:function(){return function(){var a=this.slicingWallsArr,b=0,c,d=a.length,l,e,t,h,f=this.slicingWallsFrontGroup,r=this.slicingWallsBackGroup;a:{var k=a[0]&&a[0]._conf.index,m,T;h=k<=y;l=1;for(c=a.length;l<c;l+=1)if(T=a[l]._conf.index,m=T<=y,m!=h||T<k)break a;l=0}for(;b<d;b+=1,l+=1)l===d&&(l=0),c=a[l],h=c._conf.index,h<Qa?f.appendChild(c):h<=y?(e?c.insertBefore(e):
f.appendChild(c),e=c):h<ea?(t?c.insertBefore(t):r.appendChild(c),t=c):r.appendChild(c)}}(),updateSliceConf:function(a,b){var c=this.getArcPath,d=a.start,l=a.end,e=ba(d),t=ba(l),h,f,r,k,m,n,p,g,x,u,z,v,O,C,V,F,N=this.cx,D=this.cy,H=this.rx,K=this.ry,A=H+(la?-1:2),J=K+(la?-1:2),I=this.innerRx,P=this.innerRy,R=this.depth,Q=this.depthY,ia=a.elements,s,M,B,E,G,L,w;h=S(e);f=T(e);r=S(t);k=T(t);m=N+H*h;n=D+K*f;p=N+A*h;g=D+J*f;s=n+R;M=N+H*r;B=D+K*k;x=N+A*r;u=D+J*k;E=B+R;this.isDoughnut?(z=N+I*h,v=D+P*f,V=
v+R,O=N+I*r,C=D+P*k,F=C+R,a.startSlice=["M",m,n,"L",m,s,z,V,z,v,"Z"],a.endSlice=["M",M,B,"L",M,E,O,F,O,C,"Z"]):(a.startSlice=["M",m,n,"L",m,s,N,Q,N,D,"Z"],a.endSlice=["M",M,B,"L",M,E,N,Q,N,D,"Z"]);la?(c=(e>t?U:0)+t-e,a.clipTopPath=this.isDoughnut?["M",m,n,"A",H,K,0,c>y?1:0,1,M,B,"L",O,C,"A",I,P,0,c>y?1:0,0,z,v,"Z"]:["M",m,n,"A",H,K,0,c>y?1:0,1,M,B,"L",this.cx,this.cy,"Z"],a.clipOuterFrontPath1=this.clipPathforNoClip,a.clipTopBorderPath=["M",p,g,"A",A,J,0,c>y?1:0,1,x,u,"L",M,B,M,B+1,"A",H,K,0,c>y?
1:0,0,m,n+1,"L",m,n,"Z"],d!=l?e>t?e<y?(a.clipOuterFrontPath=["M",this.rightX,D,"A",H,K,0,0,1,M,B,"v",R,"A",H,K,0,0,0,this.rightX,D+R,"Z"],a.clipOuterFrontPath1=["M",this.leftX,D,"A",H,K,0,0,0,m,n,"v",R,"A",H,K,0,0,1,this.leftX,D+R,"Z"],a.clipOuterBackPath=["M",this.rightX,D,"A",H,K,0,1,0,this.leftX,D,"v",R,"A",H,K,0,1,1,this.rightX,D+R,"Z"],this.isDoughnut&&(a.clipInnerBackPath=["M",this.rightInnerX,D,"A",I,P,0,1,0,this.leftInnerX,D,"v",R,"A",I,P,0,1,1,this.rightInnerX,D+R,"Z"],a.clipInnerFrontPath=
["M",this.rightInnerX,D,"A",I,P,0,0,1,O,C,"v",R,"A",I,P,0,0,0,this.rightInnerX,D+R,"Z","M",this.leftInnerX,D,"A",I,P,0,0,0,z,v,"v",R,"A",I,P,0,0,1,this.leftInnerX,D+R,"Z"])):t>y?(a.clipOuterFrontPath=["M",this.rightX,D,"A",H,K,0,1,1,this.leftX,D,"v",R,"A",H,K,0,1,0,this.rightX,D+R,"Z"],a.clipOuterBackPath=["M",this.leftX,D,"A",H,K,0,0,1,M,B,"v",R,"A",H,K,0,0,0,this.leftX,D+R,"Z","M",this.rightX,D,"A",H,K,0,0,0,m,n,"v",R,"A",H,K,0,0,1,this.rightX,D+R,"Z"],this.isDoughnut&&(a.clipInnerFrontPath=["M",
this.rightInnerX,D,"A",I,P,0,1,1,this.leftInnerX,D,"v",R,"A",I,P,0,1,0,this.rightInnerX,D+R,"Z"],a.clipInnerBackPath=["M",this.leftInnerX,D,"A",I,P,0,0,1,O,C,"v",R,"A",I,P,0,0,0,this.leftInnerX,D+R,"Z","M",this.rightInnerX,D,"A",I,P,0,0,0,z,v,"v",R,"A",I,P,0,0,1,this.rightInnerX,D+R,"Z"])):(a.clipOuterFrontPath=["M",this.rightX,D,"A",H,K,0,0,1,M,B,"v",R,"A",H,K,0,0,0,this.rightX,D+R,"Z"],a.clipOuterBackPath=["M",m,n,"A",H,K,0,0,1,this.rightX,D,"v",R,"A",H,K,0,0,0,m,s,"Z"],this.isDoughnut&&(a.clipInnerFrontPath=
["M",this.rightInnerX,D,"A",I,P,0,0,1,O,C,"v",R,"A",I,P,0,0,0,this.rightInnerX,D+R,"Z"],a.clipInnerBackPath=["M",z,v,"A",I,P,0,0,1,this.rightInnerX,D,"v",R,"A",I,P,0,0,0,z,V,"Z"])):e<y?t>y?(a.clipOuterFrontPath=["M",m,n,"A",H,K,0,0,1,this.leftX,D,"v",R,"A",H,K,0,0,0,m,s,"Z"],a.clipOuterBackPath=["M",this.leftX,D,"A",H,K,0,0,1,M,B,"v",R,"A",H,K,0,0,0,this.leftX,D+R,"Z"],this.isDoughnut&&(a.clipInnerFrontPath=["M",z,v,"A",I,P,0,0,1,this.leftInnerX,D,"v",R,"A",I,P,0,0,0,z,V,"Z"],a.clipInnerBackPath=
["M",this.leftInnerX,D,"A",I,P,0,0,1,O,C,"v",R,"A",I,P,0,0,0,this.leftInnerX,D+R,"Z"])):(a.clipOuterFrontPath=["M",m,n,"A",H,K,0,0,1,M,B,"v",R,"A",H,K,0,0,0,m,s,"Z"],a.clipOuterBackPath=this.clipPathforNoClip,this.isDoughnut&&(a.clipInnerFrontPath=["M",z,v,"A",I,P,0,0,1,O,C,"v",R,"A",I,P,0,0,0,z,V,"Z"],a.clipInnerBackPath=this.clipPathforNoClip)):(a.clipOuterFrontPath=this.clipPathforNoClip,a.clipOuterBackPath=["M",m,n,"A",H,K,0,0,1,M,B,"v",R,"A",H,K,0,0,0,m,s,"Z"],this.isDoughnut&&(a.clipInnerFrontPath=
this.clipPathforNoClip,a.clipInnerBackPath=["M",z,v,"A",I,P,0,0,1,O,C,"v",R,"A",I,P,0,0,0,z,V,"Z"])):a.clipOuterFrontPath=a.clipOuterBackPath=a.clipInnerBackPath=a.clipInnerFrontPath=this.clipPathforNoClip,b||(a.elements.startSlice._conf.index=e,a.elements.endSlice._conf.index=t,a.elements.frontOuter._conf.index=La(t,e),a.elements.frontOuter1&&(a.elements.frontOuter1._conf.index=e,a.elements.frontOuter1.attr("litepath",[a.clipOuterFrontPath1])),a.thisElement.attr("litepath",[a.clipTopPath]),a.elements.bottom.attr("litepath",
[a.clipTopPath]),a.elements.bottomBorder.attr("litepath",[a.clipTopPath]),a.elements.topBorder&&a.elements.topBorder.attr("litepath",[a.clipTopBorderPath]),a.elements.frontOuter.attr("litepath",[a.clipOuterFrontPath]),a.elements.backOuter.attr("litepath",[a.clipOuterBackPath]),this.isDoughnut&&(a.elements.backInner.attr("litepath",[a.clipInnerBackPath]),a.elements.frontInner.attr("litepath",[a.clipInnerFrontPath]),a.elements.backInner._conf.index=La(t,e)),this.hasOnePoint?(a.elements.startSlice.hide(),
a.elements.endSlice.hide()):(a.elements.startSlice.attr("litepath",[a.startSlice]).show(),a.elements.endSlice.attr("litepath",[a.endSlice]).show()))):(p=this.moveCmdArr,g=this.lineCmdArr,x=this.closeCmdArr,G=this.centerPoint,u=this.leftPoint,A=this.topPoint,J=this.rightPoint,R=this.bottomPoint,L=this.leftDepthPoint,w=this.rightDepthPoint,h=this.leftInnerPoint,f=this.rightInnerPoint,r=this.leftInnerDepthPoint,k=this.rightInnerDepthPoint,a.clipOuterFrontPath1=[],d!=l?(e>t?e<y?(d=c(N,D,m,n,this.leftX,
D,H,K,1,0),l=c(N,D,this.leftX,D,this.rightX,D,H,K,1,0),B=c(N,D,this.rightX,D,M,B,H,K,1,0),a.clipOuterBackPath=p.concat(u,l,g,w,c(N,Q,this.rightX,Q,this.leftX,Q,H,K,0,0),x),a.clipOuterFrontPath1=p.concat([m,n],d,g,L,c(N,Q,this.leftX,Q,m,s,H,K,0,0),x),a.clipOuterFrontPath=p.concat(J,B,g,[M,E],c(N,Q,M,E,this.rightX,Q,H,K,0,0),x),a.clipTopBorderPath=p.concat([m,n],d,l,B),this.isDoughnut?(m=c(N,D,O,C,this.rightInnerX,D,I,P,0,0),n=c(N,D,this.rightInnerX,D,this.leftInnerX,D,I,P,0,0),v=c(N,D,this.leftInnerX,
D,z,v,I,P,0,0),a.clipInnerBackPath=p.concat(f,n,g,r,c(N,Q,this.leftInnerX,Q,this.rightInnerX,Q,I,P,1,0),x),a.clipInnerFrontPath=p.concat(h,v,g,[z,V],c(N,Q,z,V,this.leftInnerX,Q,I,P,1,0),x,p,[O,C],m,g,k,c(N,Q,this.rightInnerX,Q,O,F,I,P,1,0),x),a.clipTopPath=a.clipTopBorderPath.concat(g,[O,C],m,n,v,x),a.clipTopBorderPath=a.clipTopBorderPath.concat(p,[O,C],m,n,v)):a.clipTopPath=a.clipTopBorderPath.concat(g,G,x)):t>y?(d=c(N,D,m,n,this.rightX,D,H,K,1,0),l=c(N,D,this.rightX,D,this.leftX,D,H,K,1,0),B=c(N,
D,this.leftX,D,M,B,H,K,1,0),a.clipOuterFrontPath=p.concat(J,l,g,L,c(N,Q,this.leftX,Q,this.rightX,Q,H,K,0,0),x),a.clipOuterBackPath=p.concat([m,n],d,g,w,c(N,Q,this.rightX,Q,m,s,H,K,0,0),x,p,u,B,g,[M,E],c(N,Q,M,E,this.leftX,Q,H,K,0,0),x),a.clipTopBorderPath=p.concat([m,n],d,l,B),this.isDoughnut?(m=c(N,D,O,C,this.leftInnerX,D,I,P,0,0),n=c(N,D,this.leftInnerX,D,this.rightInnerX,D,I,P,0,0),v=c(N,D,this.rightInnerX,D,z,v,I,P,0,0),a.clipInnerFrontPath=p.concat(h,n,g,k,c(N,Q,this.rightInnerX,Q,this.leftInnerX,
Q,I,P,1,0),x),a.clipInnerBackPath=p.concat(f,v,g,[z,V],c(N,Q,z,V,this.rightInnerX,Q,I,P,1,0),x,p,[O,C],m,g,r,c(N,Q,this.leftInnerX,Q,O,F,I,P,1,0),x),a.clipTopPath=a.clipTopBorderPath.concat(g,[O,C],m,n,v,x),a.clipTopBorderPath=a.clipTopBorderPath.concat(p,[O,C],m,n,v)):a.clipTopPath=a.clipTopBorderPath.concat(g,G,x)):(d=c(N,D,m,n,this.rightX,D,H,K,1,0),l=c(N,D,this.rightX,D,M,B,H,K,1,0),a.clipOuterFrontPath=p.concat(J,l,g,[M,E],c(N,Q,M,E,this.rightX,Q,H,K,0,0),x),a.clipOuterBackPath=p.concat([m,n],
d,g,w,c(N,Q,this.rightX,Q,m,s,H,K,0,0),x),a.clipTopBorderPath=p.concat([m,n],d,l),this.isDoughnut?(m=c(N,D,O,C,this.rightInnerX,D,I,P,0,0),n=c(N,D,this.rightInnerX,D,z,v,I,P,0,0),a.clipInnerFrontPath=p.concat([O,C],m,g,k,c(N,Q,this.rightInnerX,Q,O,F,I,P,1,0),x),a.clipInnerBackPath=p.concat(f,n,g,[z,V],c(N,Q,z,V,this.rightInnerX,Q,I,P,1,0),x),a.clipTopPath=a.clipTopBorderPath.concat(g,[O,C],m,n,x),a.clipTopBorderPath=a.clipTopBorderPath.concat(p,[O,C],m,n)):a.clipTopPath=a.clipTopBorderPath.concat(g,
G,x)):e<y?t>y?(d=c(N,D,m,n,this.leftX,D,H,K,1,0),l=c(N,D,this.leftX,D,M,B,H,K,1,0),a.clipOuterBackPath=p.concat(u,l,g,[M,E],c(N,Q,M,E,this.leftX,Q,H,K,0,0),x),a.clipOuterFrontPath=p.concat([m,n],d,g,L,c(N,Q,this.leftX,Q,m,s,H,K,0,0),x),a.clipTopBorderPath=p.concat([m,n],d,l),this.isDoughnut?(m=c(N,D,O,C,this.leftInnerX,D,I,P,0,0),n=c(N,D,this.leftInnerX,D,z,v,I,P,0,0),a.clipInnerBackPath=p.concat([O,C],m,g,r,c(N,Q,this.leftInnerX,Q,O,F,I,P,1,0),x),a.clipInnerFrontPath=p.concat(h,n,g,[z,V],c(N,Q,z,
V,this.leftInnerX,Q,I,P,1,0),x),a.clipTopPath=a.clipTopBorderPath.concat(g,[O,C],m,n,x),a.clipTopBorderPath=a.clipTopBorderPath.concat(p,[O,C],m,n)):a.clipTopPath=a.clipTopBorderPath.concat(g,G,x)):(d=c(N,D,m,n,M,B,H,K,1,0),a.clipOuterBackPath=p.concat([m,n]),a.clipTopBorderPath=a.clipOuterBackPath.concat(d),a.clipOuterFrontPath=a.clipTopBorderPath.concat(g,[M,E],c(N,Q,M,E,m,s,H,K,0,0),x),this.isDoughnut?(m=c(N,D,O,C,z,v,I,P,0,0),a.clipInnerBackPath=p.concat([O,C]),a.clipTopPath=a.clipTopBorderPath.concat(g,
[O,C],m,x),a.clipTopBorderPath=a.clipTopBorderPath.concat(p,[O,C],m),a.clipInnerFrontPath=a.clipInnerBackPath.concat(m,g,[z,V],c(N,Q,z,V,O,F,I,P,1,0),x)):a.clipTopPath=a.clipTopBorderPath.concat(g,G,x)):(d=c(N,D,m,n,M,B,H,K,1,0),a.clipOuterFrontPath=p.concat([m,n]),a.clipTopBorderPath=a.clipOuterFrontPath.concat(d),a.clipOuterBackPath=a.clipTopBorderPath.concat(g,[M,E],c(N,Q,M,E,m,s,H,K,0,0),x),this.isDoughnut?(m=c(N,D,O,C,z,v,I,P,0,0),a.clipInnerFrontPath=p.concat([O,C]),a.clipTopPath=a.clipTopBorderPath.concat(g,
[O,C],m,x),a.clipTopBorderPath=a.clipTopBorderPath.concat(a.clipInnerFrontPath,m),a.clipInnerBackPath=a.clipInnerFrontPath.concat(m,g,[z,V],c(N,Q,z,V,O,F,I,P,1,0),x)):a.clipTopPath=a.clipTopBorderPath.concat(g,G,x)),d=p.concat(u,g,J),m=p.concat(A,g,R),a.clipTopPath=a.clipTopPath.concat(d,m),a.clipOuterFrontPath=a.clipOuterFrontPath.concat(d),a.clipOuterFrontPath1=a.clipOuterFrontPath1.concat(d),a.clipOuterBackPath=a.clipOuterBackPath.concat(d),this.isDoughnut&&(m=p.concat(h,g,f),a.clipInnerFrontPath=
a.clipInnerFrontPath.concat(m),a.clipInnerBackPath=a.clipInnerBackPath.concat(m))):(a.clipTopPath=a.clipOuterFrontPath=a.clipOuterBackPath=[],this.isDoughnut&&(a.clipInnerFrontPath=a.clipInnerBackPath=[])),b||(a.elements.startSlice._conf.index=e,a.elements.endSlice._conf.index=t,a.elements.frontOuter._conf.index=La(t,e),a.elements.frontOuter1&&(a.elements.frontOuter1._conf.index=e,ia.frontOuter1.attr({path:a.clipOuterFrontPath1})),a.thisElement.attr({path:a.clipTopPath}),ia.topBorder.attr({path:a.clipTopBorderPath}),
ia.bottom.attr({path:a.clipTopPath}),ia.bottomBorder.attr({path:a.clipTopBorderPath}),ia.frontOuter.attr({path:a.clipOuterFrontPath}),ia.backOuter.attr({path:a.clipOuterBackPath}),this.isDoughnut&&(ia.frontInner.attr({path:a.clipInnerFrontPath}),ia.backInner.attr({path:a.clipInnerBackPath})),this.hasOnePoint?(a.elements.startSlice.hide(),a.elements.endSlice.hide()):(a.elements.startSlice.attr({path:a.startSlice}).show(),a.elements.endSlice.attr({path:a.endSlice}).show())))},onPlotHover:function(a,
b){var c=this.pointElemStore[a]._confObject,d=c.thisElement,l=c.elements,e=this.colorObjs[a],t=e.hoverProps,h=b?t.hoverColorObj:e.color,f=e.showBorderEffect,r=b?t.borderColor:e.borderColor,e=b?t.borderWidth:e.borderWidth;la?(t={fill:w(h.top),"stroke-width":0},1!==f&&(t.stroke=r,t["stroke-width"]=e),d._attr(t),f&&l.topBorder.attr({fill:w(h.topBorder),"stroke-width":0})):(d._attr({fill:w(h.top),"stroke-width":0}),l.topBorder.attr({stroke:r,"stroke-width":e}));l.bottom.attr({fill:w(h.bottom),"stroke-width":0});
l.bottomBorder.attr({stroke:r,"stroke-width":e});l.frontOuter.attr({fill:w(h.frontOuter),"stroke-width":0});l.backOuter.attr({fill:w(h.backOuter),"stroke-width":0});l.startSlice.attr({fill:w(h.startSlice),stroke:r,"stroke-width":e});l.endSlice.attr({fill:w(h.endSlice),stroke:r,"stroke-width":e});d=ba(c.start);c=ba(c.end);(d>c?U:0)+c-d>y&&l.frontOuter1.attr({fill:w(h.frontOuter),"stroke-width":0});this.isDoughnut&&(l.frontInner.attr({fill:w(h.frontInner),"stroke-width":0}),l.backInner.attr({fill:w(h.backInner),
"stroke-width":0}))},createSlice:function(){var a={stroke:!0,strokeWidth:!0,"stroke-width":!0,dashstyle:!0,"stroke-dasharray":!0,translateX:!0,translateY:!0,"stroke-opacity":!0,transform:!0,fill:!0,opacity:!0,ishot:!0,start:!0,end:!0,cursor:!0},b=function(c,b){var d,e,l=this,q=l._confObject,h,f=q.elements,k,n,p=q.Pie3DManager;"string"===typeof c&&void 0!==b&&null!==b&&(d=c,c={},c[d]=b);if(c&&"string"!==typeof c){void 0!==c.cx&&(c.start=c.cx);void 0!==c.cy&&(c.end=c.cy);for(d in c)if(e=c[d],a[d])if(q[d]=
e,"ishot"===d||"cursor"===d){h={};h[d]=e;for(k in f)f[k].attr(h);l._attr(h)}else if("transform"===d){for(k in f)f[k].attr({transform:c[d]});l._attr({transform:c[d]})}else"stroke"===d||"strokeWidth"===d||"stroke-width"===d||"dashstyle"===d||"stroke-dasharray"===d?(h={},h[d]=e,f.topBorder&&f.topBorder.attr(h),f.startSlice.attr(h),f.endSlice.attr(h),f.bottomBorder.attr(h)):"fill"===d||"start"!==d&&"end"!==d||(n=!0);else l._attr(d,e);n&&(p.updateSliceConf(q),p.refreshDrawing())}else l=l._attr(c);return l},
c=function(a,c,b,d){var e=this._confObject.elements,l;for(l in e)if(b)e[l].drag(c,b,d);else e[l].on(a,c);return b?this.drag(c,b,d):this._on(a,c)},d=function(){var a=this._confObject.elements,c;for(c in a)a[c].hide();return this._hide()},e=function(){var a=this._confObject.elements,c;for(c in a)a[c].show();return this._show()},h=function(){var a=this._confObject,c=a.elements,b;for(b in c)c[b].destroy();la&&(a.clipTop.destroy(),a.clipOuterFront.destroy(),a.clipOuterBack.destroy(),a.clipOuterFront1&&
a.clipOuterFront1.destroy(),a.clipInnerFront&&a.clipInnerFront.destroy(),a.clipInnerBack&&a.clipInnerBack.destroy());return this._destroy()};return function(a,f,k,r,n,m,p,g,T,x){var S=this.renderer;k=this.parseColor(k,r);a={start:a,end:f,elements:{},Pie3DManager:this};f=this.slicingWallsArr;r=a.elements;var z,v=la?"litepath":"path";x&&(this.colorObjs[p]={color:k,borderColor:n,borderWidth:m,showBorderEffect:!1},x.hoverColorObj=this.parseColor(x.color,x.alpha),this.colorObjs[p].hoverProps=x);this.updateSliceConf(a,
!0);la?(x={fill:w(k.top),"stroke-width":0},1!==T&&(x.stroke=n,x["stroke-width"]=m),x=S[v](a.clipTopPath,this.topGroup).attr(x),T&&(r.topBorder=S[v](a.clipTopBorderPath,this.topGroup).attr({fill:w(k.topBorder),"stroke-width":0}))):(x=S[v](a.clipTopPath,this.topGroup).attr({fill:w(k.top),"stroke-width":0}),r.topBorder=S[v](a.clipTopBorderPath,this.topGroup).attr({stroke:n,"stroke-width":m}));r.bottom=S[v](a.clipTopPath,this.bottomBorderGroup).attr({fill:w(k.bottom),"stroke-width":0});r.bottomBorder=
S[v](la?a.clipTopPath:a.clipTopBorderPath,this.bottomBorderGroup).attr({stroke:n,"stroke-width":m});r.frontOuter=S[v](a.clipOuterFrontPath,this.slicingWallsFrontGroup).attr({fill:w(k.frontOuter),"stroke-width":0});r.backOuter=S[v](a.clipOuterBackPath,this.outerBackGroup).attr({fill:w(k.backOuter),"stroke-width":0});r.startSlice=S[v](a.startSlice,this.slicingWallsFrontGroup).attr({fill:w(k.startSlice),stroke:n,"stroke-width":m});r.endSlice=S[v](a.endSlice,this.slicingWallsFrontGroup).attr({fill:w(k.endSlice),
stroke:n,"stroke-width":m});n=ba(a.start);m=ba(a.end);T=(n>m?U:0)+m-n;T>y&&(r.frontOuter1=S[v](a.clipOuterFrontPath1,this.slicingWallsFrontGroup).attr({fill:w(k.frontOuter),"stroke-width":0}),r.frontOuter1._conf={index:n,isStart:.5,pIndex:p},la&&(a.clipOuterFront1=a.clipOuterFrontPath1));r.frontOuter._conf={index:La(m,n),isStart:.5,pIndex:p};r.startSlice._conf={index:n,isStart:0,pIndex:p};r.endSlice._conf={index:m,isStart:1,pIndex:p};this.hasOnePoint&&(r.startSlice.hide(),r.endSlice.hide());this.isDoughnut?
(r.frontInner=S[v](a.clipInnerFrontPath,this.innerFrontGroup).attr({fill:w(k.frontInner),"stroke-width":0}),r.backInner=S[v](a.clipInnerBackPath,this.innerBackGroup).attr({fill:w(k.backInner),"stroke-width":0}),r.backInner._conf={index:La(m,n),isStart:.5,pIndex:p},T>y?la?f.push(r.startSlice,r.frontOuter1,r.frontOuter,r.backInner,r.endSlice):f.push(r.startSlice,r.frontOuter1,r.frontOuter,r.endSlice):la?f.push(r.startSlice,r.frontOuter,r.backInner,r.endSlice):f.push(r.startSlice,r.frontOuter,r.endSlice)):
T>y?f.push(r.startSlice,r.frontOuter1,r.frontOuter,r.endSlice):f.push(r.startSlice,r.frontOuter,r.endSlice);if(void 0!==g){for(z in r)r[z].tooltip(g);x.tooltip(g)}la&&(a.clipTop=a.clipTopPath,a.clipOuterFront=a.clipOuterFrontPath,a.clipOuterBack=a.clipOuterBackPath,this.isDoughnut&&(a.clipInnerFront=a.clipInnerFrontPath,a.clipInnerBack=a.clipInnerBackPath));x._confObject=a;a.thisElement=x;x._destroy=x.destroy;x.destroy=h;x._show=x.show;x.show=e;x._hide=x.hide;x.hide=d;x._on=x.on;x.on=c;x._attr=x.attr;
x.attr=b;this.pointElemStore.push(x);return x}}()};Ma.prototype.constructor=Ma;p("renderer.pie3d",{type:"pie3d",isHovered:!1,translate:function(){var a=0,b=this.options,c=b.series[0],d=b.plotOptions.series.dataLabels,e=b.plotOptions.pie3d,h=g(c.startAngle,0)%360,n=c.managedPieSliceDepth,p=c.slicedOffset=e.slicedOffset,y=this.canvasWidth,r=this.canvasHeight,X=[this.canvasLeft+.5*y,this.canvasTop+.5*r-.5*n],m,V,B,F,x,b=c.data,s,z=ia(y,r),A,O,C,J=d.distance,w=c.pieYScale,N=c.pieSliceDepth,D=c.slicedOffsetY=
p*w;X.push(e.size,e.innerSize||0);X=qa(X,function(a,c){return(A=/%$/.test(a))?[y,r-n,z,z][c]*parseInt(a,10)/100:a});X[2]/=2;X[3]/=2;X.push(X[2]*w);X.push((X[2]+X[3])/2);X.push(X[5]*w);c.getX=function(a,c){B=f.asin((a-X[1])/(X[2]+J));return X[0]+(c?-1:1)*S(B)*(X[2]+J)};c.center=X;xa(b,function(c){a+=c.y});c.labelsRadius=X[2]+J;c.labelsRadiusY=c.labelsRadius*w;c.quadrantHeight=(r-n)/2;c.quadrantWidth=y/2;F=-h*Y;F=v(1E3*F)/1E3;x=F+U;e=k(parseInt(d.style.fontSize,10),10)+4;c.maxLabels=u(c.quadrantHeight/
e);c.labelFontSize=e;c.connectorPadding=k(d.connectorPadding,5);c.isSmartLineSlanted=g(d.isSmartLineSlanted,!0);c.connectorWidth=k(d.connectorWidth,1);c.enableSmartLabels=d.enableSmartLabels;c.Pie3DManager||(c.Pie3DManager=new Ma(X[0],X[1],X[2],X[3],w,N,this.layers.dataset,this.paper,1===c.data.length,c.use3DLighting));xa(b,function(b){m=F;s=a?b.y/a:0;F=v(1E3*(F+s*U))/1E3;F>x&&(F=x);V=F;b.shapeArgs={start:v(1E3*m)/1E3,end:v(1E3*V)/1E3};b.centerAngle=B=(V+m)/2%U;b.slicedTranslation=[v(S(B)*p),v(T(B)*
D)];O=S(B)*X[2];c.radiusY=C=T(B)*X[4];b.tooltipPos=[X[0]+.7*O,X[1]+C];b.percentage=100*s;b.total=a})},drawPlotPie3d:function(a,b){this.translate();var c=this,d=a.items,e=a.data,h=c.options,f=h.plotOptions,n=f.series,p=c.layers,r=c.elements.plots[0],g=c.datasets[0],f=f.series.dataLabels,m=n.dataLabels.style,n=k(a.moveDuration,n.animation.duration),y=c.paper,v=h.tooltip||{},v=v&&!1!==v.enabled,V=g.slicedOffset,x=g.slicedOffsetY,B=c.plotGraphicClick,z=c.plotDragMove,u=c.plotDragStart,F=c.plotDragEnd,
C=c.plotMouseDown,s=c.plotMouseUp,J=c.plotRollOver,N=c.plotRollOut,D=!!c.datasets[0].enableRotation,H=b.showBorderEffect,K=e.length,h=h.chart.usePerPointLabelColor,A={fontFamily:m.fontFamily,fontSize:m.fontSize,lineHeight:m.lineHeight,fontWeight:m.fontWeight,fontStyle:m.fontStyle},ia=function(a){return function(){c.legendClick(a,!0,!1)}},I=function(a){return function(){return c.getEventArgs(a)}},P=function(a){return function(c,b,d,e,l){z.call(a,c,b,d,e,l)}},R=function(a){return function(c,b,d){u.call(a,
c,b,d)}},Q=function(a){return function(){F.call(a)}},U=function(a){return function(){C.call(a)}},ta=function(a){return function(c){s.call(a,c)}},M=function(a){return function(c){N.call(a,c)}},$=function(a){return function(c){J.call(a,c)}},E,G,L,Y,aa,ga,W,ea,da,Z;e&&K||(e=[]);r.singletonCase=1===K;r.chartPosition=Ea(c.container);r.pieCenter=g.center;r.timerThreshold=30;for(Z=-1;++Z<K;)L=e[Z],m=L.y,Y=L.displayValue,A=L.sliced,ea=L.shapeArgs,E=L.centerAngle,da=L.toolText,ga=(aa=!!L.link)||D||!L.doNotSlice,
null===m||void 0===m||(G=d[Z])||(b.data[Z].plot=G=d[Z]={chart:c,index:Z,seriesData:r,value:m,angle:E,link:L.link,shapeArgs:ea,slicedX:A&&!r.singletonCase?S(E)*V:0,slicedY:A&&!r.singletonCase?T(E)*x:0,sliced:A,labelText:Y,name:L.name,label:L.name,percentage:L.percentage,toolText:da,originalIndex:K-Z-1,style:L.style,graphic:g.Pie3DManager.createSlice(ea.start,ea.end,L.color,L._3dAlpha,L.borderColor,L.borderWidth,Z,v?da:"",H,L.rolloverProperties)},b.data[Z].legendClick=ia(G),b.data[Z].getEventArgs=I(G),
G.graphic.plotItem=G,G.graphic.data("plotItem",G),G.transX=S(E)*V,G.transY=T(E)*x,G.slicedTranslation="t"+G.transX+","+G.transY,E={index:b.reversePlotOrder?Z:K-1-Z,link:L.link,value:L.y,displayValue:L.displayValue,categoryLabel:L.categoryLabel,isSliced:L.sliced,toolText:L.toolText},G.graphic.attr({transform:"t"+G.slicedX+","+G.slicedY,ishot:ga,cursor:aa?"pointer":""}).click(B).drag(P(G),R(G),Q(G)).mousedown(U(G.graphic)).mouseup(ta(G.graphic)).data("groupId",Z).data("eventArgs",E).mouseover($(G)).mouseout(M(G)),
void 0!==Y&&(m=L.style,A={fontFamily:m.fontFamily,fontSize:m.fontSize,lineHeight:m.lineHeight,fontWeight:m.fontWeight,fontStyle:m.fontStyle},G.dataLabel=y.text(p.dataset).css(A).attr({text:Y,title:L.originalText||"",fill:(h?w(L.color):m.color)||"#000000","text-bound":[m.backgroundColor,m.borderColor,m.borderThickness,m.borderPadding,m.borderRadius,m.borderDash],visibility:"hidden",ishot:ga,cursor:aa?"pointer":""}).data("eventArgs",E).hover($(G),M(G)).click(B).mousedown(C,G.dataLabel).mouseup(s,G.dataLabel).data("plotItem",
G),0<f.distance&&(W=f.connectorWidth)&&f.enableSmartLabels&&(G.connector=y.path("M 0 0 l 0 0",p.dataset).attr({"stroke-width":W,stroke:f.connectorColor||"#606060",visibility:"hidden",ishot:ga,cursor:aa?"pointer":""}).data("eventArgs",E).click(B).hover($(G),M(G)).mousedown(C,G.connector).mouseup(s,G.connector).data("plotItem",G))));g.Pie3DManager.refreshDrawing();0<n?c.animate(d,n):c.placeDataLabels(!1,d)},rotate:function(a){var b=this.datasets[0],c=this.elements.plots[0].items,d=b.slicedOffset,e=
b.slicedOffsetY,h=b.startAngle,f;a=isNaN(a)?-b._lastAngle:a;f=(a-h)%360;b.startAngle=k(a,b.startAngle)%360;f=-(f*B)/180;b.Pie3DManager&&b.Pie3DManager.rotate(f);xa(c,function(a){var c=a.graphic,b=a.shapeArgs,q=b.start+=f,b=b.end+=f,h=a.angle=ba((q+b)/2),q=a.sliced,b=S(h),h=T(h);a.slicedTranslation=[v(b*d),v(h*e)];a.transX=a.slicedTranslation[0];a.transY=a.slicedTranslation[1];a.slicedX=q?S(f)*d:0;a.slicedY=q?T(f)*e:0;c&&q&&a.graphic.attr({transform:"t"+a.slicedTranslation[0]+","+a.slicedTranslation[1]})});
this.placeDataLabels(!0,c)},plotRollOver:function(a){var b=this.chart,c=b.datasets[0].Pie3DManager;this.seriesData.isRotating||(va.call(this.graphic,b,a,"DataPlotRollOver"),c.colorObjs[this.index]&&c.onPlotHover(this.index,!0));b.isHovered=!0},plotRollOut:function(a){var b=this.chart,c=b.datasets[0].Pie3DManager;this.seriesData.isRotating||(va.call(this.graphic,b,a,"DataPlotRollOut"),c.colorObjs[this.index]&&c.onPlotHover(this.index,!1));b.isHovered=!1},plotDragStart:function(a,b,c){var d=this.seriesData,
e=this.chart.datasets[0];e.enableRotation&&(a=Oa.call(c,a,b,d.pieCenter,d.chartPosition,e.pieYScale),e.dragStartAngle=a,e._lastAngle=-e.startAngle,e.startingAngleOnDragStart=e.startAngle)},plotDragEnd:function(){var a=this.chart,b=a.datasets[0],c=b.Pie3DManager,d=b.startAngle,e=this.seriesData,h={hcJSON:{series:[{startAngle:d}]}};a.disposed||Ba(a.logic.chartInstance.jsVars._reflowData,h,!0);e.isRotating&&(setTimeout(function(){e.isRotating=!1},0),ra.raiseEvent("rotationEnd",{startingAngle:ba(d,!0),
changeInAngle:d-b.startingAngleOnDragStart},a.logic.chartInstance),!a.isHovered&&c.colorObjs[this.index]&&c.onPlotHover(this.index,!1))},plotDragMove:function(a,b,c,d,e){var h=this.chart;a=h.datasets[0];b=this.seriesData;h.options.series[0].enableRotation&&!b.singletonCase&&(b.isRotating||(b.isRotating=!0,ra.raiseEvent("rotationStart",{startingAngle:ba(a.startAngle,!0)},h.logic.chartInstance)),c=Oa.call(e,c,d,b.pieCenter,b.chartPosition,a.pieYScale),d=c-a.dragStartAngle,a.dragStartAngle=c,b.moveDuration=
0,a._lastAngle+=180*d/B,c=(new Date).getTime(),!a._lastTime||a._lastTime+b.timerThreshold<c)&&(a._lastTime||h.rotate(),b.timerId=setTimeout(function(){h.disposed&&h.disposing||h.rotate()},b.timerThreshold),a._lastTime=c)},animate:function(a,b){var c,d,e,h=a.length,f,n,k,p=this,g,m=function(){p.disposed||p.disposing||p.placeDataLabels(!1,a)};if(p.datasets[0].alphaAnimation)p.layers.dataset.attr({opacity:0}),p.layers.dataset.animate({opacity:1},b,"ease-in",function(){p.disposed||p.disposing||p.placeDataLabels(!1,
a)});else for(c=0;c<h;c++)f=a[c],n=f.graphic,k=f.shapeArgs,f=2*B,n&&(n.attr({start:f,end:f}),g=k.start,k=k.end,d?n.animateWith(d,e,{cx:g-f,cy:k-f},b,"ease-in"):(e=pa.animation({cx:g-f,cy:k-f},b,"ease-in",m),d=n.animate(e)))},placeDataLabels:function(){var a=function(a,b){return a.point.value-b.point.value},b=function(a,b){return a.angle-b.angle},c=["start","start","end","end"],d=[-1,1,1,-1],e=[1,1,-1,-1];return function(p,t){var g=this.datasets[0],V=this.smartLabel,r=this.options.plotOptions.series.dataLabels,
B=r.style,m=k(F(parseFloat(B.lineHeight)),12),u=Ha(r.placeInside,!1),s=r.skipOverlapLabels,A=r.manageLabelOverflow,x=r.connectorPadding,J=r.connectorWidth,z,w,O=0<r.distance,C=g.center,$=C[1],Y=C[0],N=C[2],D=C[4],H=[[],[],[],[]],K,aa,fa,I=this.canvasLeft,P=this.canvasTop,R=this.canvasWidth,Q,Z,ga,M,W,E,G,L,da,ma,ha,ba=g.labelsRadius,na=v(100*g.labelsRadiusY)/100,Ca=g.labelFontSize,ja=Ca,la=ja/2,x=[x,x,-x,-x],pa=g.maxLabels,ra=g.isSmartLineSlanted,qa=g.enableSmartLabels,wa,g=g.pieSliceDepth/2;p||V.setStyle(B);
if(1==t.length)M=t[0],wa=M.dataLabel,M.slicedTranslation=[I,P],wa&&(wa.attr({visibility:h,"text-anchor":"middle",x:Y,y:$+la-2}),wa.x=Y);else if(u)xa(t,function(a){if(wa=a.dataLabel){ha=a.angle;ma=$+C[6]*T(ha)+la-2;G=Y+C[5]*S(ha);wa.x=G;wa._x=G;wa.y=ma;if(a.sliced){a=a.slicedTranslation;var b=a[1]-P;G+=a[0]-I;ma+=b}wa.attr({visibility:h,align:"middle",x:G,y:ma})}});else{xa(t,function(a){if(wa=a.dataLabel)ha=a.angle,0>ha&&(ha=U+ha),K=0<=ha&&ha<Qa?1:ha<y?2:ha<ea?3:0,H[K].push({point:a,angle:ha})});for(fa=
u=4;fa--;){if(s&&(M=H[fa].length-pa,0<M))for(H[fa].sort(a),aa=H[fa].splice(0,M),Z=0,ga=aa.length;Z<ga;Z+=1)M=aa[Z].point,M.dataLabel.attr({visibility:"hidden"}),M.connector&&M.connector.attr({visibility:"hidden"});H[fa].sort(b)}fa=n(H[0].length,H[1].length,H[2].length,H[3].length);na=n(ia(fa,pa)*ja,na+ja);H[1].reverse();H[3].reverse();for(V.setStyle(B);u--;){Z=H[u];ga=Z.length;s||(ja=ga>pa?na/ga:Ca,la=ja/2);M=ga*ja;B=na;for(fa=0;fa<ga;fa+=1,M-=ja)w=ta(na*T(Z[fa].angle)),B<w?w=B:w<M&&(w=M),B=(Z[fa].oriY=
w)-ja;aa=c[u];ga=na-(ga-1)*ja;B=0;for(fa=Z.length-1;0<=fa;fa-=1,ga+=ja)M=Z[fa].point,ha=Z[fa].angle,W=M.sliced,wa=M.dataLabel,w=ta(na*T(ha)),w<B?w=B:w>ga&&(w=ga),B=w+ja,L=(w+Z[fa].oriY)/2,w=Y+e[u]*ba*S(f.asin(L/na)),L*=d[u],L+=$,da=$+D*T(ha),E=Y+N*S(ha),(2>u&&w<E||1<u&&w>E)&&(w=E),G=w+x[u],ma=L+la-2,z=G+x[u],wa.x=z,wa._x=z,A&&(Q=1<u?z-this.canvasLeft:this.canvasLeft+R-z,V.setStyle(M.style),m=k(F(parseFloat(M.style.lineHeight)),12)+2*F(parseFloat(M.style.border),12),m=V.getSmartText(M.labelText,Q,
m),wa.attr({text:m.text,title:m.tooltext||""})),ha<y&&(L+=g,da+=g,ma+=g),wa.y=ma,W&&(m=M.transX,W=M.transY,G+=m,w+=m,E+=m,da+=W,z+=m),wa.attr({visibility:h,"text-anchor":aa,x:z,y:L}),O&&J&&qa&&(z=M.connector,M.connectorPath=w=["M",E,da,"L",ra?w:E,L,G,L],z?(z.attr({path:w}),z.attr("visibility",h)):M.connector=z=this.paper.path(w).attr({"stroke-width":J,stroke:r.connectorColor||"#606060",visibility:h}))}}}}()},p["renderer.piebase"]);p("renderer.pie",{drawDoughnutCenterLabel:function(a,b,c,d,e,f,n){var k=
this.options.series[0];f=f||k.lastCenterLabelConfig;var p=this.paper,r=this.smartLabel,g=this.layers.dataset,m=this.elements,T=f.padding,S=2*f.textPadding,y={fontFamily:f.font,fontSize:f.fontSize+"px",lineHeight:1.2*f.fontSize+"px",fontWeight:f.bold?"bold":"",fontStyle:f.italic?"italic":""},x=1.414*(.5*d-T)-S;e=1.414*(.5*e-T)-S;var v;r.setStyle(y);r=r.getSmartText(a,x,e);(e=m.doughnutCenterLabel)?(e.attr("text")!==a&&this.centerLabelChange(a),v=m.centerLabelOvalBg):(f.bgOval&&(m.centerLabelOvalBg=
v=p.circle(b,c,.5*d-T,g)),e=m.doughnutCenterLabel=p.text(g).hover(this.centerLabelRollover,this.centerLabelRollout).click(this.centerLabelClick),e.chart=this);a?(e.css(y).attr({x:b,y:c,text:r.text,visibility:h,title:f.toolText?"":r.tooltext||"",fill:w({FCcolor:{color:f.color,alpha:f.alpha}}),"text-bound":f.bgOval?"none":[w({FCcolor:{color:f.bgColor,alpha:f.bgAlpha}}),w({FCcolor:{color:f.borderColor,alpha:f.borderAlpha}}),f.borderThickness,f.textPadding,f.borderRadius]}).tooltip(f.toolText),f.bgOval&&
v&&v.attr({visibility:h,fill:Za(f.bgColor),"fill-opacity":f.bgAlpha/100,stroke:Za(f.borderColor),"stroke-width":f.borderThickness,"stroke-opacity":f.borderAlpha/100})):(e.attr("visibility","hidden"),v&&v.attr("visibility","hidden"));n&&(k.lastCenterLabelConfig=f)},centerLabelRollover:function(){var a=this.chart,b=a.fusionCharts,c=a.options.series[0].lastCenterLabelConfig,b={height:b.args.height,width:b.args.width,pixelHeight:b.ref.offsetHeight,pixelWidth:b.ref.offsetWidth,id:b.args.id,renderer:b.args.renderer,
container:b.options.containerElement,centerLabelText:c&&c.label};this.attr("text")&&ra.raiseEvent("centerLabelRollover",b,a.logic.chartInstance,this,a.hoverOnCenterLabel)},centerLabelRollout:function(){var a=this.chart,b=a.fusionCharts,c=a.options.series[0].lastCenterLabelConfig,b={height:b.args.height,width:b.args.width,pixelHeight:b.ref.offsetHeight,pixelWidth:b.ref.offsetWidth,id:b.args.id,renderer:b.args.renderer,container:b.options.containerElement,centerLabelText:c&&c.label};this.attr("text")&&
ra.raiseEvent("centerLabelRollout",b,a.logic.chartInstance,this,a.hoverOffCenterLabel)},centerLabelClick:function(){var a=this.chart,b=a.fusionCharts,c=a.options.series[0].lastCenterLabelConfig,b={height:b.args.height,width:b.args.width,pixelHeight:b.ref.offsetHeight,pixelWidth:b.ref.offsetWidth,id:b.args.id,renderer:b.args.renderer,container:b.options.containerElement,centerLabelText:c&&c.label};this.attr("text")&&ra.raiseEvent("centerLabelClick",b,a.logic.chartInstance)},centerLabelChange:function(a){var b=
this.fusionCharts;ra.raiseEvent("centerLabelChanged",{height:b.args.height,width:b.args.width,pixelHeight:b.ref.offsetHeight,pixelWidth:b.ref.offsetWidth,id:b.args.id,renderer:b.args.renderer,container:b.options.containerElement,centerLabelText:a},this.logic.chartInstance)},hoverOnCenterLabel:function(){var a=this.chart.options.series[0].lastCenterLabelConfig;(a.hoverColor||a.hoverAlpha)&&this.attr({fill:w({FCcolor:{color:a.hoverColor||a.color,alpha:a.hoverAlpha||a.alpha}})})},hoverOffCenterLabel:function(){var a=
this.chart.options.series[0].lastCenterLabelConfig;(a.hoverColor||a.hoverAlpha)&&this.attr({fill:w({FCcolor:{color:a.color,alpha:a.alpha}})})},drawPlotPie:function(a,b){var c=this,d=a.items,e=a.data,f=c.options,n=f.series[0],p=f.plotOptions,g=p.pie,r=p.series,v=c.layers,m=v.dataset,B=c.elements.plots[0],p=p.series.dataLabels,u=r.dataLabels.style,V=r.shadow,r=k(a.moveDuration,r.animation.duration),x=c.paper,F=f.tooltip||{},F=F&&!1!==F.enabled,z=((b.startAngle*=-y/180)||0)%U,s=g.slicedOffset,A=b.valueTotal,
C=U/A,J=c.canvasLeft+.5*c.canvasWidth,ia=c.canvasTop+.5*c.canvasHeight,N=.5*g.size,g=.5*(g.innerSize||0),D=c.plotGraphicClick,H=c.plotDragMove,K=c.plotDragStart,$=c.plotDragEnd,ta=c.plotMouseDown,I=c.plotMouseUp,P=c.plotRollOver,R=c.plotRollOut,Q=!!c.datasets[0].enableRotation,Z=e.length,f=f.chart.usePerPointLabelColor,ga=n.centerLabelConfig,M=ga.label,Y={fontFamily:u.fontFamily,fontSize:u.fontSize,lineHeight:u.lineHeight,fontWeight:u.fontWeight,fontStyle:u.fontStyle},E,G,L,aa,W,ha,da,ea,ma,na,ja=
a.shadowGroup,ba,la,Ca,ra,qa,oa=function(a){return function(){c.legendClick(a,!0,!1)}},Qa=function(a){return function(){return c.getEventArgs(a)}},Na=function(){c.disposed||c.disposing||c.paper.ca.redrawDataLabels||(c.placeDataLabels(!1,d,a),c.paper.ca.redrawDataLabels=c.redrawDataLabels)};e&&Z||(e=[]);ja||(ja=a.shadowGroup=x.group(m).toBack());B.singletonCase=1===Z;B.chartPosition||(B.chartPosition=Ea(c.container));B.pieCenter=[J,ia];B.timerThreshold=30;ma=ea=z;for(ba=Z;ba--;)G=e[ba],Y=G.y,L=G.displayValue,
W=G.sliced,u=G.toolText,ha=(aa=!!G.link)||Q||!G.doNotSlice,null!==Y&&void 0!==Y&&(E=G.color.FCcolor,E.r=N,E.cx=J,E.cy=ia,G.rolloverProperties&&(E=G.rolloverProperties.color.FCcolor,E.r=N,E.cx=J,E.cy=ia),ma=ea,ea-=B.singletonCase?U:Y*C,da=.5*(ea+ma),r?ra=qa=z:(ra=ea,qa=ma),(E=d[ba])||(b.data[ba].plot=E=d[ba]={chart:c,index:ba,seriesData:B,value:Y,angle:da,slicedX:S(da)*s,slicedY:T(da)*s,sliced:W,labelText:L,toolText:u,label:G.name,link:G.link,percentage:A?Y*A/100:0,originalIndex:Z-ba-1,style:G.style,
color:G.color,borderColor:G.borderColor,borderWidth:G.borderWidth,rolloverProperties:G.rolloverProperties,center:[J,ia],innerDiameter:2*g,centerLabelConfig:G.centerLabelConfig,graphic:x.ringpath(J,ia,N,g,ra,qa,v.dataset).attr({"stroke-width":G.borderWidth,"stroke-linejoin":"round",stroke:G.borderColor,fill:w(G.color),"stroke-dasharray":G.dashStyle,redrawDataLabels:z,ishot:ha,cursor:aa?"pointer":""}).shadow(V&&G.shadow,ja).drag(H,K,$).mousedown(ta).mouseup(I).hover(P,R)},E.graphic.click(D),F&&E.graphic.tooltip(u),
b.data[ba].legendClick=oa(E),b.data[ba].getEventArgs=Qa(E),E.graphic.data("plotItem",E),aa={index:b.reversePlotOrder?ba:Z-1-ba,link:G.link,value:G.y,displayValue:G.displayValue,categoryLabel:G.categoryLabel,isSliced:G.sliced,toolText:G.toolText},E.graphic.data("eventArgs",aa),void 0!==L&&(u=G.style,Y={fontFamily:u.fontFamily,fontSize:u.fontSize,lineHeight:u.lineHeight,fontWeight:u.fontWeight,fontStyle:u.fontStyle},E.dataLabel=x.text(m).css(Y).attr({text:L,fill:(f?w(G.color):u.color)||"#000000","text-bound":[u.backgroundColor,
u.borderColor,u.borderThickness,u.borderPadding,u.borderRadius,u.borderDash],ishot:ha,visibility:"hidden"}).click(D).drag(H,K,$).mousedown(ta).mouseup(I).hover(P,R).data("eventArgs",aa).hide(),E.dataLabel.data("plotItem",E),0<p.distance&&(na=p.connectorWidth)&&p.enableSmartLabels&&(E.connector=x.path("M 0 0 l 0 0",m).attr({"stroke-width":na,stroke:p.connectorColor||"#606060",visibility:h,ishot:!0}).click(D).data("eventArgs",aa).drag(H,K,$).mousedown(ta).mouseup(I).hover(P,R),E.connector.data("plotItem",
E)))),E.angle=da,E.transX=S(da)*s,E.transY=T(da)*s,E.slicedTranslation="t"+S(da)*s+","+T(da)*s,r?la?E.graphic.animateWith(la,Ca,{ringpath:[J,ia,N,g,ea,ma],transform:E.sliced?E.slicedTranslation:""},r,"easeIn"):(Ca=pa.animation({ringpath:[J,ia,N,g,ea,ma],redrawDataLabels:c,transform:E.sliced?E.slicedTranslation:""},r,"easeIn",Na),la=E.graphic.animate(Ca)):E.graphic.attr({transform:E.sliced?E.slicedTranslation:""}));M&&g&&c.drawDoughnutCenterLabel(M,J,ia,2*g,2*g,ga,!0);n.lastCenterLabelConfig=ga;r?
n.doughnutCenterLabel&&n.doughnutCenterLabel.attr({"fill-opacity":0}).animate(pa.animation({"fill-opacity":100},100).delay(100<r?r-100:0)):c.placeDataLabels(!1,d,a)},rotate:function(a,b){var c=a.items,d=a.data,e=this.options.plotOptions.pie,f=e.slicedOffset,h=U/b.valueTotal,n=this.canvasLeft+.5*this.canvasWidth,p=this.canvasTop+.5*this.canvasHeight,k=.5*e.size,e=.5*(e.innerSize||0),g,m,u,v,y;u=(b.startAngle||0)%U;for(y=d.length;y--;)g=d[y],m=g.y,null!==m&&void 0!==m&&(g=c[y],v=u,u-=g.seriesData.singletonCase?
U:m*h,m=.5*(u+v),g.angle=m,g.transX=S(m)*f,g.transY=T(m)*f,g.slicedTranslation="t"+S(m)*f+","+T(m)*f,g.graphic.attr({ringpath:[n,p,k,e,u,v],transform:g.sliced?g.slicedTranslation:""}));this.placeDataLabels(!0,c,a)}},p["renderer.piebase"])},[3,2,2,"sr4"]]);
FusionCharts.register("module",["private","modules.renderer.js-zoomline",function(){var Ea=this,qa=Ea.hcLib,ba=Ea.window,La=/msie/i.test(ba.navigator.userAgent)&&!ba.opera,Oa=qa.chartAPI,Ma=qa.chartAPI,ra=qa.extend2,s=qa.raiseEvent,pa=qa.pluck,A=qa.pluckNumber,Ja=qa.getFirstColor,W=qa.graphics.convertColor,Va=qa.bindSelectionEvent,g=qa.createTrendLine,Aa=qa.parseUnsafeString,Ga=qa.regescape,k=qa.Raphael,Ha=qa.hasTouch,Wa=qa.getMouseCoordinate,ja=qa.FC_CONFIG_STRING,ua="rgba(192,192,192,"+(La?.002:
1E-6)+")",Ba=ba.Math,Fa=Ba.ceil,w=Ba.floor,Ta=Ba.max,Xa=Ba.min,la=Ba.cos,xa=Ba.sin,ya=ba.parseFloat,Pa=ba.parseInt,va;ra(qa.eventList,{zoomed:"FC_Zoomed",pinned:"FC_Pinned",resetzoomchart:"FC_ResetZoomChart"});Oa("zoomline",{friendlyName:"Zoomable and Panable Multi-series Line Chart",rendererId:"zoomline",standaloneInit:!0,hasVDivLine:!0,defaultSeriesType:"stepzoom",canvasborderthickness:1,defaultPlotShadow:1,chart:function(){var b=this.base.chart.apply(this,arguments),e=b[ja],h=this.dataObj.chart,
f=this.colorManager.getColor("canvasBorderColor");ra(b.chart,{animation:!1,zoomType:"x",canvasPadding:A(h.canvaspadding,0),scrollColor:Ja(pa(h.scrollcolor,this.colorManager.getColor("altHGridColor"))),scrollShowButtons:!!A(h.scrollshowbuttons,1),scrollHeight:A(h.scrollheight,16)||16,scrollBarFlat:e.flatScrollBars,allowPinMode:A(h.allowpinmode,1),skipOverlapPoints:A(h.skipoverlappoints,1),showToolBarButtonTooltext:A(h.showtoolbarbuttontooltext,1),btnResetChartTooltext:pa(h.btnresetcharttooltext,"Reset Chart"),
btnZoomOutTooltext:pa(h.btnzoomouttooltext,"Zoom out one level"),btnSwitchToZoomModeTooltext:pa(h.btnswitchtozoommodetooltext,"<strong>Switch to Zoom Mode</strong><br/>Select a subset of data to zoom into it for detailed view"),btnSwitchToPinModeTooltext:pa(h.btnswitchtopinmodetooltext,"<strong>Switch to Pin Mode</strong><br/>Select a subset of data and compare with the rest of the view"),pinPaneFill:W(pa(h.pinpanebgcolor,f),A(h.pinpanebgalpha,15)),zoomPaneFill:W(pa(h.zoompanebgcolor,"#b9d5f1"),A(h.zoompanebgalpha,
30)),zoomPaneStroke:W(pa(h.zoompanebordercolor,"#3399ff"),A(h.zoompaneborderalpha,80)),crossline:{enabled:A(h.showcrossline,1),line:{"stroke-width":A(h.crosslinethickness,1),stroke:Ja(pa(h.crosslinecolor,"#000000")),"stroke-opacity":A(h.crosslinealpha,20)/100},labelEnabled:A(h.showcrosslinelabel,h.showcrossline,1),labelstyle:{fontSize:ya(h.crosslinelabelsize)?ya(h.crosslinelabelsize)+"px":e.outCanvasStyle.fontSize,fontFamily:pa(h.crosslinelabelfont,e.outCanvasStyle.fontFamily)},valueEnabled:A(h.showcrosslinevalues,
h.showcrossline,1),valuestyle:{fontSize:ya(h.crosslinevaluesize)?ya(h.crosslinevaluesize)+"px":e.inCanvasStyle.fontSize,fontFamily:pa(h.crosslinevaluefont,e.inCanvasStyle.fontFamily)}}});return b},preSeriesAddition:function(){var b=this.dataObj,e=b.chart,h=this.hcJSON,f=h[ja],k=this.smartLabel,g=A(e.compactdatamode,0),V=pa(e.dataseparator,"|"),v=A(e.showlabels,1),s=e.labeldisplay&&e.labeldisplay.toLowerCase(),n=v&&A(e.labelheight),w="rotate"===s?270:A(e.rotatelabels,1)?270:0,B=h.xAxis.labels.style,
F=ya(B.lineHeight),u=h.chart.labelPadding=A(e.labelpadding,.2*F)+h.chart.plotBorderWidth,$,Y,J,y=0,W=-1,U,ea,ma;0>n&&(n=void 0);0>u&&(u=(h.chart.plotBorderWidth||0)+2);$=($=b.categories)&&$[0]||{};b=$.category;delete $.category;h.categories=s=ra({data:Y=g&&b&&b.split&&b.split(V)||b||[],rotate:w,wrap:"none"!==s},$);void 0!==b&&($.category=b);$=Y.length||0;if(U=!g&&v&&0!==n&&$||0){for(;U--;)Y[U]=Y[U]&&(J=Y[U].label||"")&&((ea=J.length)>y&&(y=ea,W=U,J)||J)||"";y&&(J=Y[W])}else if(g&&$&&!n)if(w){g=ba.document.createElement("div");
n=ba.document.createElement("span");g.setAttribute("class","fusioncharts-zoomline-localsmartlabel");g.style.cssText="display:block;width:1px;position:absolute;";for(ma in B)g.style[ma]=B[ma];n.innerHTML=b.replace(/\s*/g,"").replace(/\{br\}/ig,"<br />").replace(new RegExp(Ga(V),"g")," ");g.appendChild(n);ba.document.body.appendChild(g);n=n.offsetWidth||void 0;g.parentNode.removeChild(g)}else J=Y[$-1]||Y[0];void 0!==n&&0!==n||!v||(J?(k.setStyle(B),J=k.getSmartText(J),n=w?J.width:J.height):n=F*(w&&3||
1));n>.3*f.height&&(n=.3*f.height);s.labelHeight=n&&n+6||0;s.show=n&&v||0;s.css=ra({},B);w?(s.css.rotation=w,s.css["text-anchor"]="end"):s.css["vertical-align"]="top";h.xAxis.min=0;h.xAxis.max=$&&$-1||0;n+=A(e.scrollheight,16)||16;h.chart.marginBottom+=u;f.marginBottomExtraSpace+=n;pa(e.caption,e.subcaption)||(f.marginTopExtraSpace+=16)},series:function(){var b=this.dataObj,e=b.chart,h=b.dataset,f=this.hcJSON,k=f[ja],S=k[0],V=f.series,v=A(e.yaxismaxvalue),s=A(e.yaxisminvalue),n=A(e.forceyaxislimits,
0),w=A(e.compactdatamode,0),B=pa(e.dataseparator,"|"),F=Ga(e.indecimalseparator),u=Ga(e.inthousandseparator),$=A(e.drawanchors,e.showanchors,1),Y=!!A(e.showlegend,1),J,y,W,U,ea,ma=Infinity,da=-Infinity,Z;ea=f.categories.data.length;if(h&&h.length&&ea){F&&(F=new RegExp(F,"g"));u&&(u=new RegExp(u,"g"));!u&&!F&&w&&n&&void 0!==v&&void 0!==s?(n=!0,da=Ta(v,s),ma=Xa(s,v)):n=!1;v=0;for(s=h.length;v<s;v++){J=h[v];W=J.data;delete J.data;w?(U=W||"",u&&(U=U.replace(u,"")),F&&(U=U.replace(F,".")),U=U.split(B)):
U=W||[];U.length>ea&&(U.length=ea);Z=U.length;if(w){if(!n)for(;Z--;)y=ya(U[Z]),isNaN(y)&&(y=void 0),y>da&&(da=y),y<=ma&&(ma=y),U[Z]=y}else for(;Z--;)y=U[Z]&&U[Z].value||"",u&&(y=y.replace(u,"")),F&&(y=y.replace(F,".")),y=ya(y),isNaN(y)&&(y=void 0),y>da&&(da=y),y<=ma&&(ma=y),U[Z]=y;V.push(y={index:v,type:"zoomline",data:U,name:J.seriesname||"",showInLegend:J.seriesname&&A(J.includeinlegend,1)&&Y||!1,showAnchors:A(J.drawanchors,J.showanchors,$),visible:!A(J.initiallyhidden,0),lineWidth:2});U.length=
ea;void 0!==W&&(J.data=W);y.attrs=this.seriesGraphicsAttrs(J);J=y.attrs.anchors;y.color=y.attrs.graphics.stroke;y.ancorRadius=J.r+J["stroke-width"]/2;y.marker={fillColor:J.fill,lineColor:J.stroke,lineWidth:1,symbol:"circle"}}-Infinity!==da&&Infinity!==ma||(da=ma=void 0);n=Pa(A(e.displaystartindex,1),10)-1;B=Pa(A(e.displayendindex,ea||2),10)-1;1>(h=A(e.pixelsperpoint,15))&&(h=1);(V=A(e.pixelsperlabel,e.xaxisminlabelwidth,f.categories.rotate?20:60))<h&&(V=h);(0>n||n>=(ea-1||1))&&(n=0);(B<=n||B>(ea-
1||1))&&(B=ea-1||1);f.stepZoom={cnd:A(e.connectnulldata,0),amrd:A(e.anchorminrenderdistance,20),nvl:A(e.numvisiblelabels,0),cdm:w,oppp:h,oppl:V,dsi:n,dei:B,vdl:B-n,dmax:S.max=da,dmin:S.min=ma,clen:ea,offset:0,step:1,llen:0,alen:0,ddsi:n,ddei:B,ppc:0};this.configureAxis(f,b);b.trendlines&&g(b.trendlines,f.yAxis,k,!1,this.isBar)}},seriesGraphicsAttrs:function(b){var e=this.dataObj.chart,h="0"!=(b.dashed||e.linedashed||"0"),f,g,h={"stroke-width":A(b.linethickness,e.linethickness,2),stroke:Ja(pa(b.color,
e.linecolor,this.colorManager.getPlotColor())),"stroke-opacity":A(b.alpha,e.linealpha,100)/100,"stroke-dasharray":h?[A(b.linedashlen,e.linedashlen,5),A(b.linedashgap,e.linedashgap,4)]:"none","stroke-linejoin":"round","stroke-linecap":"round"};f=ra({},h);g=h["stroke-width"]+A(e.pinlinethicknessdelta,1);f["stroke-width"]=0<g&&g||0;f["stroke-dasharray"]=[3,2];return{graphics:h,pin:f,shadow:{opacity:h["stroke-opacity"],apply:A(e.showshadow,+!k.vml)},anchors:{"stroke-linejoin":"round","stroke-linecap":"round",
r:A(b.anchorradius,e.anchorradius,h["stroke-width"]+2),stroke:Ja(pa(b.anchorbordercolor,e.anchorbordercolor,h.stroke)),"stroke-opacity":A(b.anchorborderalpha,e.anchorborderalpha,100)/100,"stroke-width":A(b.anchorborderthickness,e.anchorborderthickness,h["stroke-width"]),fill:Ja(pa(b.anchorbgcolor,e.anchorbgcolor,"#ffffff")),"fill-opacity":A(b.anchorbgalpha,e.anchorbgalpha,100)/100,opacity:A(b.anchoralpha,e.anchoralpha,100)/100},anchorShadow:A(e.anchorshadow,e.showshadow,+!k.vml)&&{apply:!0,opacity:A(b.anchoralpha,
e.anchoralpha,100)/100}}},eiMethods:{zoomOut:function(){var b=this.jsVars,e;if(b&&(e=b.hcObj))return e.zoomOut&&b.hcObj.zoomOut()},zoomTo:function(b,e){var h=this.jsVars,f;if(h&&(f=h.hcObj))return f.zoomRange&&h.hcObj.zoomRange(b,e)},resetChart:function(){var b=this.jsVars,e;b&&(e=b.hcObj)&&(e.pinRangePixels&&b.hcObj.pinRangePixels(),e.resetZoom&&b.hcObj.resetZoom())},setZoomMode:function(b){var e=this.jsVars,h;e&&(h=e.hcObj)&&h.activatePin&&h.activatePin(!b)},getViewStartIndex:function(){var b=this.jsVars,
e;if(b&&b.hcObj&&(e=b.hcObj._zoominfo))return e.ddsi},getViewEndIndex:function(){var b=this.jsVars,e;if(b&&b.hcObj&&(e=b.hcObj._zoominfo))return b=e.ddei-1,(b>=e.clen?e.clen:b)-1}}},Oa.msline);Ma("renderer.zoomline",{resetZoom:function(){var b=this._zoomhistory,e=this.options.stepZoom;if(!b.length)return!1;b.length=0;this.zoomTo(e.dsi,e.dei)&&s("zoomReset",this._zoomargs,this.fusionCharts,[this.fusionCharts.id]);return!0},zoomOut:function(){var b=this._zoomhistory.pop(),e=this.options.stepZoom,h,
f,k;b?(h=b.dsi,f=b.dei):this._prezoomed&&(h=0,f=e.clen-1);(k=this.zoomTo(h,f))&&Ea.raiseEvent("zoomedout",k,this.fusionCharts);return!0},zoomRangePixels:function(b,e){var h=this._zoomhistory,f=this._zoominfo,k=f.ppp,f=f.ddsi,g;h.push(this._zoominfo);(g=this.zoomTo(f+w(b/k),f+w(e/k)))?Ea.raiseEvent("zoomedin",g,this.fusionCharts):h.pop()},zoomRange:function(b,e){var h=this._zoomhistory,f;h.push(this._zoominfo);(f=this.zoomTo(+b,+e))?Ea.raiseEvent("zoomedin",f,this.fusionCharts):h.pop()},zoomTo:function(b,
e){var h=this.xlabels.data,f=this._zoominfo,k=this._zoomhistory,g=f.clen;0>b&&(b=0);b>=g-1&&(b=g-1);e<=b&&(e=b+1);e>g-1&&(e=g-1);if(b===e||b===f.dsi&&e===f.dei)return!1;this.pinRangePixels();f=ra({},f);f.dsi=b;f.dei=e;f=this._zoominfo=f;this.updatePlotZoomline();this.zoomOutButton[f.vdl===f.clen-1?"hide":"show"]();this.resetButton[k.length?"show":"hide"]();this.elements.zoomscroller.attr({"scroll-ratio":f.vdl/(g-!!g),"scroll-position":[f.dsi/(g-f.vdl-1),!0]});h={level:k.length+1,startIndex:b,startLabel:h[b],
endIndex:e,endLabel:h[e]};s("zoomed",h,this.fusionCharts,[this.fusionCharts.id,b,e,h.startLabel,h.endLabel,h.level]);return h},activatePin:function(b){var e=this._zoominfo,h=this.options.chart,f=this.pinButton;if(f&&e.pinned^(b=!!b))return b||this.pinRangePixels(),s("zoomModeChanged",{pinModeActive:b},this.fusionCharts,[]),h.showToolBarButtonTooltext&&f.tooltip(h[b&&"btnSwitchToZoomModeTooltext"||"btnSwitchToPinModeTooltext"]||""),f.attr("button-active",b),e.pinned=b},pinRangePixels:function(b,e){var h=
this.paper,f=this.elements,k=this.xlabels.data,g=this._zoominfo,V=this.layers.zoompin,v=f.pinrect,w=f["clip-pinrect"],n=this._pingrouptransform,A=this.plots,B=e-b,F,u;if(g&&V&&v){if(b===e)return V.hide(),f.pintracker.hide(),this.pinButton.attr("button-active",!1),g.pinned=!1;for(u=A.length;u--;)v=A[u],F=v.pinline,F||(F=v.pinline=h.path(void 0,V).attr(v.attrPin)),F.attr("path",v.graphic.attrs.path);w[0]=b+this.canvasLeft;w[2]=B;V.attr({"clip-rect":w,transform:n}).show();f.pintracker.__pindragdelta=
0;f.pintracker.show().attr({transform:n,x:b,width:B});b=this.getValuePixel(b);e=this.getValuePixel(e);s("pinned",{startIndex:b,endIndex:e,startLabel:k[b],endLabel:k[e]},this.fusionCharts,[this.fusionCharts.id,b,e,k[b],k[e]]);return g.pinned=!0}},getValuePixel:function(b){var e=this._zoominfo;return e.ddsi+w(b/e.ppp)},getParsedLabel:function(b){var e=this.xlabels;return e.parsed[b]||(e.parsed[b]=Aa(e.data[b]||""))},drawGraph:function(){var b=this,e=b.paper,h=b.canvasLeft,f=b.canvasTop,g=b.canvasWidth,
S=b.canvasHeight,s=b.options,v=s.chart,w=v.plotBorderWidth,n=v.useRoundEdges,A=v.showToolBarButtonTooltext,B=v.crossline,F=b.layers,u=b.toolbar,$=b.elements,Y=v.allowPinMode,J=s.categories,y=!1,W,U,ea,ma,da,Z,ba;Z=b._zoominfo=ra({},s.stepZoom);b._zoomhistory=[];Z.clen&&(y=b._prezoomed=Z.dei-Z.dsi<Z.clen-1,da=b._visw=b.canvasWidth-2*v.canvasPadding,ma=b._visx=b.canvasLeft+v.canvasPadding,b._visout=-(b.chartHeight+b.canvasHeight+1E3),b.base.drawGraph.apply(b,arguments),b._ypvr=b.yAxis[0]&&b.yAxis[0].pixelValueRatio||
0,ba=b._ymin||(b._ymin=b.yAxis[0].endY),b._yminValue=b.yAxis[0].min,s=F.dataset.attr("clip-rect",[b._visx,b.canvasTop,b._visw,b.canvasHeight]),ea=F.scroll||(F.scroll=e.group("scroll").insertAfter(F.layerAboveDataset)),b.xlabels=[],b.xlabels.show=J.show,b.xlabels.height=J.labelHeight,b.xlabels.wrap=J.wrap,b.xlabels.rotate=J.rotate,b.xlabels.data=J.data||[],b.xlabels.parsed=[],b.xlabels.css=J.css,b.xlabels.group=e.group("zoomline-plot-xlabels",F.datalabels),F.datalabels.transform(["T",ma,f+S+v.scrollHeight+
v.labelPadding]),b._lcmd=J.rotate?"y":"x",Y&&(Y=k.crispBound(0,f-ba,0,S,w),W=$["clip-pinrect"]=[Y.x,f,Y.width,Y.height],U=F.zoompin=e.group("zoompin").insertBefore(s).transform(b._pingrouptransform=["T",ma,ba]).hide(),$.pinrect=e.rect(0,f-ba,b._visw,S,F.zoompin).attr({"stroke-width":0,stroke:"none",fill:v.pinPaneFill,"shape-rendering":"crisp",ishot:!0}),$.pintracker=e.rect(F.tracker).attr({transform:U.transform(),x:0,y:f-ba,width:0,height:S,stroke:"none",fill:ua,ishot:!0,cursor:k.svg&&"ew-resize"||
"e-resize"}).drag(function(b){var e=ma+b+this.__pindragdelta,f=this.__pinboundleft,h=this.__pinboundright,g=this.data("cliprect").slice(0);e<f?e=f:e>h&&(e=h);U.transform(["T",e,ba]);$.pintracker.transform(U.transform());k.svg||(g[0]=g[0]+e-ma-this.__pindragdelta,U.attr("clip-rect",g));this.__pindragoffset=b},function(){this.__pinboundleft=0-W[0]+ma+h;this.__pinboundright=this.__pinboundleft+da-W[2];this.data("cliprect",U.attr("clip-rect"));U._.clipispath=!0},function(){U._.clipispath=!1;this.__pindragdelta=
this.__pindragoffset;delete this.__pindragoffset;delete this.__pinboundleft;delete this.__pinboundright}),b.pinButton=u.add("pinModeIcon",function(){b.activatePin(!b._zoominfo.pinned)},{tooltip:A&&v.btnSwitchToPinModeTooltext||""})),w++,Y=k.crispBound(h-w,f+S+w,g+w+w,v.scrollHeight,w),w--,$.zoomscroller=e.scroller(Y.x+(n&&-1||w%2),Y.y-(n&&4||2),Y.width-(!n&&2||0),Y.height,!0,{showButtons:v.scrollShowButtons,scrollRatio:Z.vdl/(Z.clen-!!Z.clen),scrollPosition:[Z.dsi/(Z.clen-Z.vdl-1),!1],displayStyleFlat:v.scrollBarFlat},
ea).attr({fill:v.scrollColor,r:n&&2||0}).scroll(b.updatePlotZoomline,b),n&&$.zoomscroller.shadow(!0),function(){var e;k.eve.on("raphael.scroll.start."+$.zoomscroller.id,function(f){e=f;b.crossline&&b.crossline.disable(!0);Ea.raiseEvent("scrollstart",{scrollPosition:f},b.logic.chartInstance)});k.eve.on("raphael.scroll.end."+$.zoomscroller.id,function(f){b.crossline&&b.crossline.disable(!1);Ea.raiseEvent("scrollend",{prevScrollPosition:e,scrollPosition:f},b.logic.chartInstance)})}(),Va(b,{attr:{stroke:v.zoomPaneStroke,
fill:v.zoomPaneFill,strokeWidth:0},selectionStart:function(){},selectionEnd:function(e){var f=e.selectionLeft-h;e=f+e.selectionWidth;b.crossline&&b.crossline.hide();b[b._zoominfo.pinned?"pinRangePixels":"zoomRangePixels"](f,e)}}),b.zoomOutButton=u.add("zoomOutIcon",function(){b.zoomOut()},{tooltip:A&&v.btnZoomOutTooltext||""})[y&&"show"||"hide"](),b.resetButton=u.add("resetIcon",function(){b.resetZoom()},{tooltip:A&&v.btnResetChartTooltext||""}).hide(),Y=b.resetButton.attr("fill"),Y[2]="rgba(255,255,255,0)",
b.resetButton.attr("fill",[Y[0],Y[1],Y[2],Y[3]]),B&&0!==B.enabled&&(b.crossline=new va(b,B)),b.updatePlotZoomline())},drawPlotZoomline:function(b,e){var h=this.paper,f=e.attrs,g=e.visible,k=g?"show":"hide",s=this.layers.dataset,v=b.group||(b.group=h.group("plot-zoomline-dataset",s)),s=b.anchorGroup||(b.anchorGroup=h.group("plot-zoomline-anchors",s)),h=b.graphic||(b.graphic=h.path(void 0,v)),w=["T",this._visx,this._ymin||(this._ymin=this.yAxis[0].endY)];v.transform(w)[k]();s.transform(w)[k]();b.graphic=
h.attr(f.graphics).shadow(f.shadow);b.attrPin=f.pin;b.visible=g;b.anchors=[];b.anchors.show=e.showAnchors;b.anchors.attrs=f.anchors;b.anchors.attrsShadow=f.anchorShadow;b.anchors.left=-(f.anchors.r+.5*f.anchors["stroke-width"]);b.anchors.right=this._visw-b.anchors.right},updatePlotZoomline:function(b,e){var h=this.paper,f=this._ypvr,g=this._visw,k=this.xlabels,s=k.css,v=k.group,w=this.plots,n,A,B,F,u,$,Y;!e&&(e=this._zoominfo);B=e.oppp;F=e.vdl=e.dei-e.dsi;u=e.ppl=e.nvl?g/e.nvl:e.oppl;g=e.step=(A=
e.ppp=g/F)<B?Fa(B/A):1;u=e.lskip=Fa(Ta(u,ya(s.lineHeight))/A/g);void 0!==b?(B=(e.clen-F-1)*b,e.offset=(B-(B=Pa(B)))*A,$=B+F):(B=e.dsi,$=e.dei,e.offset=0);F=e.norm=B%g;e.ddsi=B-=F;e.ddei=$=$+2*g-F;e.pvr=f;e._ymin=this._ymin;e._yminValue=this._yminValue;f=k.show?Fa(($-B)/g/u):0;F=e.llen-1;e.llen=f;Y=e.ppc=A*u*g;if(f>F)for(u=F,F=f;u<F;u++)(n=k[u])&&n.show()||(k[u]=h.text(0,0,"",v).css(s));else for(u=f,F+=1;u<F;u++)k[u].hide();f=A*g<e.amrd?0:Fa(($-B)/g);s=f-e.alen;e.alen=f;k.wrap&&(k.rotate?(k._width=
k.height,k._height=Y):(k._width=Y,k._height=k.height));for(g=w.length;g--;){v=w[g];n=v.anchors;if(n.show&&s){A=n.attrs;u=0;for(F=f;u<F;u++)n[u]=n[u]&&n[u].show()||h.circle(A,v.anchorGroup);u=f;for(F=n.length;u<F;u++)n[u]&&n[u].hide()}this.drawPlotZoomlineGraphics(e,v.data,v.graphic,n,!g&&k)}ba.FC_DEV_ENVIRONMENT&&ba.jQuery&&(FusionCharts["debugger"].enable()?(this.debug=this.debug||(ba.jQuery("#fc-zoominfo").length||ba.jQuery("body").append('<pre id="fc-zoominfo">'),ba.jQuery("#fc-zoominfo").css({position:"absolute",
left:"10px",top:"0","pointer-events":"none",opacity:.7,width:"250px",zIndex:"999",border:"1px solid #cccccc","box-shadow":"1px 1px 3px #cccccc",background:"#ffffff"})),this.debug.text(JSON.stringify(e,0,2))):(this.debug&&ba.jQuery("#fc-zoominfo").remove(),delete this.debug))},drawPlotZoomlineGraphics:function(b,e,h,f,g){var k=this.smartLabel,s=[],v=!b.cnd,w=b.ddei,n=b.clen,A=b.step,B=b.lskip,F=b.ppp,u=b.offset,$=b.pvr,Y=this._visw,J=this._visout,y=this._lcmd,W="M",U,ea,ba=g&&g[0],da,Z;f=f[0];var ja=
{},la={},ga,ha=0,na,ra,qa=-b.norm,pa=b.ddsi,ua=0;ba&&(g.group.transform(["T",-u,0]),ra=g.wrap,da=g._height,Z=g._width,ra&&k.setStyle(g.css));for(;pa<=w;pa+=A,qa+=A)na=ha/3+ua,ga=qa*F,void 0===(U=e[pa])?(v&&(W="M"),ea=J,g=ga-u,U=J,ua++):(s[ha++]=W,s[ha++]=ea=g=ga-u,s[ha++]=U=(U-b._yminValue)*$,W="L"),f&&(f=f.attr((ja.cx=ea,ja.cy=U,ja)).next),!ba||na%B||(na=ba.attrs,ea=this.getParsedLabel(pa),g=0>g||g>Y?J:ga,ba._prevtext===ea?delete la.text:la.text=ba._prevtext=ea,na[y]===g?delete la[y]:la[y]=g,ra&&
ea&&(la.text=k.getSmartText(ea,Z,da).text),ba=ba.attr(la).next);w>=n&&(void 0!==(U=e[n-1])&&(s[ha++]="L",s[ha++]=(qa-(w-n))*F-u,s[ha++]=U*$),f&&f.attr((ja.cx=J,ja.cy=J,ja)));h.attr("path",s)},legendClick:function(b){var e=!b.visible,h=e?"show":"hide";b.group[h]();b.anchorGroup[h]();this.base.legendClick.apply(this,arguments);return b.visible=e},dispose:function(){var b;this.crossline&&(this.crossline.dispose(),delete this.crossline);(b=this.elements.pintracker)&&(b.undrag(),delete this.elements.pintracker);
delete this.zoomOutButton;delete this.resetButton;delete this.pinButton;this.xlabels&&(this.xlabels.length=0);delete this.xlabels;this.base.dispose.apply(this)}},Ma["renderer.cartesian"]);va=function(b,e){var h=b.paper,f=this.left=b._visx,g=this.width=b._visw,k=this.top=b.canvasTop,s=this.height=b.canvasHeight,v=this._visout=b._visout,w=this.plots=b.plots,n=b.layers.dataset,A,B=e.labelstyle,F=e.valuestyle;A=this.group=h.group("crossline-labels",n).attr({transform:["T",f,b._ymin]});this.tracker=h.rect(f,
k,g,s,n).attr({stroke:"none","stroke-width":0,fill:ua}).toFront().mousedown(this.onMouseDown,this).mouseup(this.onMouseUp,this,!0).mouseout(this.onMouseOut,this).mousemove(this.onMouseMove,this);Ha&&this.tracker.touchstart(this.onMouseMove,this);this.container=b.container;this.line=h.path(void 0,n).attr(ra({path:["M",f,k,"l",0,s]},e.line)).toBack();f=this.labels=e.valueEnabled&&h.set();e.labelEnabled&&(this.positionLabel=h.text(v,k+s+(b.options.chart.scrollHeight||0)+2.5,"").insertAfter(b.xlabels.group.parent).css(B).attr({"vertical-align":"top",
"text-bound":["rgba(255,255,255,1)","rgba(0,0,0,1)",1,2.5]}));this.hide();this.pixelRatio=b._ypvr;this.yminValue=b._yminValue;this.positionLabels=b.xlabels||{data:[],parsed:[]};this.getZoomInfo=function(){return b._zoominfo};this.getDataIndexFromPixel=function(e){return b.getValuePixel(e)};this.getPositionLabel=function(e){return b.getParsedLabel(e)};if(e.valueEnabled){k=0;for(s=w.length;k<s;k++)B=w[k],B=B.graphic.attrs.stroke,f.push(h.text(0,v,"",A).css(F).attr({fill:B,"text-bound":["rgba(255,255,255,0.8)",
"rgba(0,0,0,0.2)",1,2.5]}));this.numberFormatter=b.numberFormatter}};va.prototype.disable=function(b){void 0!==b&&(this.disabled=!!b)&&this.visible&&this.hide();return this.disabled};va.prototype.onMouseOut=function(){this.hide()};va.prototype.onMouseDown=function(){!Ha&&this.hide();this._mouseIsDown=!0};va.prototype.onMouseUp=function(){!Ha&&this.hide();delete this._mouseIsDown};va.prototype.onMouseMove=function(b){if(!(this.disabled||this._mouseIsDown&&!Ha)){var e=this.getZoomInfo(),h=this.line,
f=this.left,g=e.step,k=e.ppp*g;b=Wa(this.container,b).chartX-f;var s;b=(b+=k/2+e.offset)-b%k;s=(s=this.getDataIndexFromPixel(Fa(b)))+s%g;b-=e.offset;h.transform(["T",w(b),0]);this.hidden&&this.show();if(s!==this.position||this.hidden)this.position=s,this.lineX=b,this.updateLabels()}};va.prototype.updateLabels=function(){var b=this.labels,e=this.plots,h=this.width,f=this.position,g=this.lineX,k=w(g),s=this.pixelRatio,v=this.yminValue,A=this._visout,n,W,B=this.numberFormatter;b&&b.forEach(function(b,
u){n=e[u];W=n.data[f];b.attr({text:B.yAxis(W),x:k,y:void 0!==W&&n.visible?(W-v)*s:A,"text-anchor":0>=g&&"start"||g>=h&&"end"||"middle"})});this.positionLabel&&this.positionLabel.attr({x:g+this.left,text:this.getPositionLabel(f)})};va.prototype.show=function(){this.disabled||(this.hidden=!1,this.group.attr("visibility","visible"),this.line.attr("visibility","visible"),this.positionLabel&&this.positionLabel.attr("visibility","visible"))};va.prototype.hide=function(){this.hidden=!0;this.group.attr("visibility",
"hidden");this.line.attr("visibility","hidden");this.positionLabel&&this.positionLabel.attr("visibility","hidden")};va.prototype.dispose=function(){for(var b in this)this.hasOwnProperty(b)&&delete this[b]};k.addSymbol({pinModeIcon:function(b,e,h){var f=.5*h,g=b-h,k=b+h,s=b-f,v=b+f,w=b+.5,n=w+1,A=w+1.5,B=e-h,F=e+f,u=e-f,f=e+(h-f);return["M",g,B,"L",s,u,s,f,g,F,b-.5,F,b,e+h+.5,w,F,k,F,v,f,v,u,k,B,A,B,A,u,A,f,n,f,n,u,A,u,A,B,"Z"]},zoomOutIcon:function(b,e,h){b-=.2*h;e-=.2*h;var f=.8*h,g=k.rad(43),s=
k.rad(48),w=b+f*la(g),g=e+f*xa(g),v=b+f*la(s),s=e+f*xa(s),A=k.rad(45),n=w+h*la(A),W=g+h*xa(A),B=v+h*la(A);h=s+h*xa(A);return["M",w,g,"A",f,f,0,1,0,v,s,"Z","M",w+1,g+1,"L",n,W,B,h,v+1,s+1,"Z","M",b-2,e,"L",b+2,e,"Z"]},resetIcon:function(b,e,g){var f=b-g,k=(Ba.PI/2+Ba.PI)/2;b+=g*la(k);var k=e+g*xa(k),s=2*g/3;return["M",f,e,"A",g,g,0,1,1,b,k,"L",b+s,k-1,b+2,k+s-.5,b,k]}})}]);
